2.4輸入、輸出數據
2.4.1輸入基本型數據
Scanner是JDK1.5新增的一個類,可以使用該類創建一個對象:
Scanner reader = new Scanner(System.in);
然後reader對象調用下列方法,讀取用戶在命令行(例如,MS-DOS窗口)輸入的各種基本類型數據:
nextBoolean(),nextByte(),nextShort()…
上述方法執行時都會阻塞,因爲程序在等待用戶在命令行輸入數據回車確認,在鍵盤輸入數0結束整個的輸入操作過程,程序將計算出這些數的和。
Example2_3.java
package example2_3;
import java.util.Scanner;
public class Example2_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("請輸入若干個數,每輸入一個數回車確認");
System.out.println("最後輸入數字0結束");
Scanner reader = new Scanner(System.in);
double sum = 0;
double x = reader.nextDouble();
while(x!=0) {
sum=sum+x;
x=reader.nextDouble();
}
System.out.println("sum="+sum);
}
}
2.4.2輸出基本型數據
System.out.println()或System.out.print()可輸出串值、表達式的值,二者的區別是前者輸出數據後換行,後者不換行。允許使用並置符號+將變量、表達式或一個常數值與一個字符串並置一起輸出,如:
System.out.println(m+“個數的和爲”+sum);
System.out.println(":"+123+“大於”+122);
需要特別注意的是,在使用System.out.println()或System.out.print()輸出字符串常量時,不可以出現“回車”,例如,下面的寫法就無法通過編譯:
System.out.println(“你好,
很高興認識你”)
如果需要輸出的字符串的長度比較長,可以將字符串分解成幾部分,然後使用並置符號+將他們首尾相接,以下是正確的寫法:
System.out.println(“你好,”+
“很高興認識你”);
另外JDK1.5新增了和C語言中printf函數類似的輸出數據的方法,格式如下:
System.out.printf(“格式控制部分”,表達式1,表達式2,…,表達式n)
格式控制部分由格式控制符號%d,%c,%f,%s和普通的字符組成,普通字符原樣輸出,格式符號用來輸出表達式的值。
%d:輸出int型數據
%c:輸出char型數據
%f:輸出浮點型數據,小數部分最多保留6位
%s:輸出字符串型數據
輸出數據時也可以控制數據在命令行的位置,例如,
%md:輸出的int型數據佔m列。
%m.nf:輸出的浮點型數據佔m列,小數點保留n位