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():讀取內容並自動換行
