Scanner
使用分隔符模式將其輸入分解為標記,然后可以使用不同的 next 方法將得到的標記轉換為不同類型的值。默認情況下該分隔符模式與空白匹配。即
public static void main(String[] args) { Scanner in = new Scanner(System.in); List list = new ArrayList(); System.out.println("使用nextInt()方法,並且輸入為:"); for (int i = 0; i < 5; i++) { list.add(in.nextInt()); } System.out.print("輸出為:"); System.out.println(list); }
輸出如下:
即當輸入數字中間為空格時,默認空格為分割符將數字分割開來
可通過如下兩個方法更改分割符:
public static void main(String[] args) { Scanner in = new Scanner(System.in); in.useDelimiter(","); List list = new ArrayList(); System.out.println("使用nextInt()方法,並且輸入為:"); for (int i = 0; i < 5; i++) { list.add(in.nextInt()); } System.out.print("輸出為:"); System.out.println(list); }
輸出為:
此使輸入數字之間的分隔符為",",若繼續用空格則報錯。
nextInt():讀取int類型的值,取值后,並不換行
public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("輸入:"); int num = in.nextInt(); String str = in.nextLine(); System.out.println("輸出:"); System.out.println(num); System.out.println(str); }
nextInt()讀取值后,並沒有讀取“\n",因此沒有換行,nextLine()讀取"\n"並換行輸出
next():查找掃描器中的下一個標記
public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("輸入:"); String num = in.next(); String str = in.nextLine(); System.out.println("輸出:"); System.out.println(num); System.out.println(str); }
與nextInt()類似,不自動換行
nextLine():讀取內容並自動換行