Java基礎之Scanner類

  Scanner主要是用來簡化文本掃描,最實用的地方表如今獲取控制檯輸入。java

  在使用這個類以前要用new Scanner(System.in)實例化一個Scanner對象,才能調用類中的方法。spa

  功能1:掃描控制檯輸入的數據,可接收的數據類型有:整數,字符串,浮點數等,具體方法以下面所示:code

    一、nextInt()   接收控制檯輸入的int型數據;對象

    二、nextDouble()   接收控制檯輸入的double型數據;blog

    三、nextFloat()  接收控制檯輸入的float型數據;字符串

    四、next()  接收控制檯輸入的字符串數據,以空格鍵做爲兩個字符串間間隔的標誌;get

    五、nextLine()  接收控制檯輸入的以回車鍵結束的字符串數據;input

  部分方法運用:it

 1 System.out.println("請輸入一個數字:");
 2 Scanner sc = new Scanner(System.in);
 3 int number = sc.nextInt();//接收整型數據
 4 
 5 System.out.println("請輸入一段英文字符串:");
 6 String str = sc.next();//接收字符串
 7 
 8 System.out.println("請輸入一個成績:");
 9 double score = sc.nextDouble();//接收浮點型數據
10 
11 //當要再次使用nextLine的時候得從新構建一個新的Scanner對象如:
12 System.out.println("請輸入一段話:");
13 Scanner input = new Scanner(System.in);
14 String nextStr = input.nextLine();

  Scanner的其餘部分方法:io

    一、delimiter() 返回此 Scanner 當前正在用於匹配分隔符的 Pattern;

    二、hasNext()  判斷掃描器中當前掃描位置後是否還存在下一段;

    三、hasNextLint()  若是在此掃描器的輸入中存在另外一行,則返回 true

  等。

  

 1 public class readhuman {
 2     private static void readfile(String filename) {
 3         try {
 4             Scanner scanner = new Scanner(new File(filename));
 5             scanner.useDelimiter(System.getProperty("line.separator"));
 6             while (scanner.hasNext()) {
 7                 parseline(scanner.next());
 8             }
 9             scanner.close();
10         } catch (FileNotFoundException e) {
11             System.out.println(e);
12         }
13     }
14 
15     private static void parseline(String line) {
16         Scanner linescanner = new Scanner(line);
17         linescanner.www.gzlij.com useDelimiter(",");
18         //能夠修改usedelimiter參數以讀取不一樣分隔符分隔的內容
19         String name = linescanner.next();
20         int age = linescanner.nextInt();
21         String idate = linescanner.next();
22         boolean iscertified = linescanner.nextBoolean();
23         System.out.println("姓名:"+name+" ,年齡:"+ age+" ,入司時間:"+ idate+" ,驗證標記:"+iscertified );
24     }
25 
26     public static void main(String[] args) {
27         if (args.length != 1) {
28             System.err.println("usage: java readhuman file location");
29             System.exit(0);
30         }
31         readfile(args[0]);
32     }
33 }
34  運行結果:C:\java>java readhuman hrinfo.txt姓名:老趙 ,年齡:28 ,入司時間:feb-01
35  ,驗證標記:true姓名:小竹 ,年齡:22 ,入司時間:dec-03 ,驗證標記:false姓名:阿波 ,年齡:21 ,入司時間:dec-03
36  ,驗證標記:false姓名:凱子,年齡:25 ,入司時間:dec-03 ,驗證標記:true
相關文章
相關標籤/搜索