Java中next與nextLine方法的區別
1. Java中的Scanner類中的方法next()與nextLine()都是吸取輸入控制檯輸入的字元
①next()方法不會吸取字元前和後的空格/Tab,只吸取字元,開始吸取字元(字元前後不算)
直到遇到空格/Tab/回車擷取吸取
②nextLine()吸取字元前後的空格/Tab鍵,回車鍵截止
2. 下面對next與nextLine()方法進行測試
①從控制檯輸入:abcd abcd abcd
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
System.out.println(str);
String str = sc.nextLine();
System.out.println(str);
}
}
對於第一種情況: 從控制檯輸入:abcd abcd abcd,輸出的結果是:
因為next方法遇到了空格停止接收,所以只輸出了abcd,nextLine方法開始從空格處開始接收直到遇到了第一個回車那麼結束接收,說明nextLine方法可以接收空格,next方法遇到空格等會停止接收
②先輸入Tab鍵,然後輸入abcd
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println(str);
}
}
對於第二種情況,輸出的結果是:
說明nextLine方法可以接收Tab鍵