爲了實現程序與人的交互,java給咱們提供了這樣一個工具類,咱們能夠獲取用戶的輸入。java.util.Scanner是Java5的新特徵。咱們能夠經過Scanner類來獲取用戶的輸入。java
咱們使用Scanner scanner = new Scanner(System.in);的基礎語法來建立一個掃描對象,用於接收鍵盤數。工具
hasnext()與hasnextLine()的使用:code
咱們經過Scanner類的next()與nextLine()的方法獲取輸入的字符串。在讀取前,咱們通常須要使用hasNext()與hasNextLine()判斷是否還有輸入的數據。視頻
當咱們使用next方式接收時:對象
代碼示例:資源
package com.scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { //建立一個掃描對象,用於接受鍵盤數 Scanner scanner= new Scanner(System.in); System.out.println("使用next方式接收:"); //判斷用戶有沒有輸入字符串 if(scanner.hasNext()){ //使用next方式接收 String str = scanner.next(); System.out.println("輸出的內容爲:"+str); } //凡是屬於IO流的類若是不關閉會一直佔用資源,關閉scanner scanner.close(); } }
next()注意點:(String str = scanner.next());字符串
當咱們使用nextLine()方式接收時:(String str = scanner.nextLine());get
代碼示例:class
package com.scanner; import java.util.Scanner; public class Demo02 { public static void main(String[] args) { //從鍵盤接收數據 Scanner scanner = new Scanner(System.in); System.out.println("使用nextLine方式接收"); //判斷是否還有輸入 if(scanner.hasNext()){ String str = scanner.nextLine(); System.out.println("輸出的內容爲:"+str); } scanner.close(); } }
nextLine()注意點:import
以enter爲結束符,也就是說nextLine()方法返回的是輸入回車以前的全部字符。
它能夠得到空白。
當輸入的數據類型不一樣時:如
Int型:Scanner.hasNextInt();//判斷是否還有數據輸入
Scanner.nextInt();//輸入整數數據
Float型同上。
scanner進階使用(與循環共同使用)
代碼示例:
package com.scanner; import java.util.Scanner; public class Demo04 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //從鍵盤接收數據 int i = 0; float f = 0.0f; System.out.println("請輸入整數:"); if (scanner.hasNextInt()){ //判斷是否還有數據輸入; i = scanner.nextInt(); System.out.println("整數數據:"+ i); }else{ System.out.println("輸入的不是整數數據!"); } System.out.println("請輸入小數:"); if (scanner.hasNext()){ f = scanner.nextFloat();//表明爲真 System.out.println("小數數據:"+ f); }else{ System.out.println("輸入的不是小數數據!"); } scanner.close();// 凡是屬於IO流的類若是不關閉會一直佔用資源,關閉scanner } }
詳細可見視頻狂神說java