java基礎筆記(六)——java流程控制Scanner
阿新 • • 發佈:2020-12-21
使用者互動Scanner
使用next()方式接收鍵盤輸入資料(不常用)
//建立一個掃描器物件,用於接收鍵盤輸入資料 Scanner scanner = new Scanner(System.in); System.out.println("使用next方式接收:"); //判斷使用者有沒有輸入資料 if (scanner.hasNext()){ //接收使用者的資料 String str = scanner.next(); //輸出的內容 System.out.println("輸出的內容:" + str ); } //凡是用完IO流,記得把資源關閉 scanner.close();
使用nextLine()方式接收鍵盤輸入資料(常用)
//建立鍵盤輸入物件,接收使用者鍵盤輸入的資料 Scanner scanner = new Scanner(System.in); System.out.println("使用nextLine方式接收資料:"); //判斷使用者輸入的資料是否還有下一行 if (scanner.hasNextLine()){ //接收使用者輸入的資料 String str = scanner.nextLine(); System.out.println("顯示輸入的資料:" + str); } //使用IO流後記得關閉資源 scanner.close();
-
當輸入的資料只有一行時,可以這麼寫
-
//定義鍵盤輸入流物件,接收鍵盤輸入資料 Scanner scanner = new Scanner(System.in); System.out.println("請輸入資料:"); String str = scanner.nextLine(); System.out.println("顯示輸入的資料:" + str); //使用IO流後,記得關閉資源 scanner.close();
-
next()與nextLine()的比較
Scanner進階
-
scanner.hasNextInt():判斷使用者輸入的是否還有int型資料
-
scanner.netInt():接收int型資料
-
...
-
案例
-
//問題:輸入多個數字,求其總和與平均數,每輸入一個數字用回車確認,通過輸入非數字來結束輸入並執行輸出結果 //建立鍵盤輸入流物件 Scanner scanner = new Scanner(System.in); //提示使用者輸入資料 System.out.println("請輸入數字:"); //定義一個sum變數記錄總和 double sum = 0; //定義一個count變數記錄變數的個數 int count = 0; //while迴圈判斷輸入的數字 while (scanner.hasNextDouble()){ //接收資料並計算總和 sum = sum + scanner.nextDouble(); //對變數個數進行累加 count++; //顯示當前總和 System.out.println("當前總和為:" + sum + ",共有" + count +"個數據"); } System.out.println(count + "個數的總和為:" + sum); System.out.println(count + "個數的平均值為:" + (sum/count)); //關閉IO流 scanner.close();
-