java使用者互動Scanner
阿新 • • 發佈:2022-03-03
1、首先建立一個掃描器物件,用於接收鍵盤資料
Scanner scanner = new Scanner(System.in); System.out.println("使用next方法接受:");
2、判斷使用者有沒有輸入字串
if (scanner.hasNext()){ //使用next()方式接收 String str = scanner.next(); System.out.println("輸出的內容為:"+str); }
或者使用hasNextLine()
if(scanner.hasNextLine()){
//使用nextLine()方法接收 String str = scanner.nextLine(); System.out.println("輸出的內容為:"+str); }
3、關閉
凡是屬於IO流的類如果不關閉會一直佔用資源
scanner.close();
必須要關閉不然會報錯!
例子1:
1 public class Demo3 { 2 public static void main(String[] args) {3 Scanner scanner = new Scanner(System.in); 4 int i = 0; 5 float f = 0.0f; 6 7 System.out.println("請輸入整數:"); 8 if (scanner.hasNextInt()) { 9 i = scanner.nextInt(); 10 System.out.println("整數為:" + i); 11 } else{ 12 System.out.println("你輸入的不是整數!"); 13 } 14 15 System.out.println("請輸入小數:"); 16 if (scanner.hasNextFloat()) { 17 f = scanner.nextFloat(); 18 System.out.println("小數為:" + f); 19 20 } else { 21 System.out.println("你輸入的不是小數!"); 22 } 23 24 scanner.close(); 25 } 26 }
例子2:
public class Demo4 { public static void main(String[] args) { //我們可以輸入多個數字,並求其總和與平均數,每輸入一個數字用回車確認,通過輸入非數字來結束 Scanner scanner= new Scanner(System.in); //和 double sum = 0; //數字的總和 int m = 0; System.out.println("輸入數字:"); //通過迴圈判斷是否還有輸入,並在裡面對每一次的求和和統計 while (scanner.hasNextDouble()){ double x =scanner.nextDouble(); m = m+1; sum = sum+x; System.out.println("你輸入的第"+m+"它的和是:"+sum); } System.out.println("輸入的數字有:"+m); System.out.println("所有數字的總和為:"+sum); System.out.println("所有數字的平均數為:"+(sum / m)); scanner.close(); } }