java中輸入next()和nextLine()的區別

1.next() :next()方法在讀取內容時,會過濾掉有效字符前面的無效字符,對輸入有效字符以前遇到的
空格鍵、Tab鍵或Enter鍵等結束符,next()方法會自動將其過濾掉;只有在讀取到有效字符以後,next
()方法纔將其後的空格鍵、Tab鍵或Enter鍵等視爲結束符;因此next()方法不能獲得帶空格的字符串.

2. nextLine() :表示讀取一行,nextLine()方法字面上有掃描一整行的意思,它的結束符只能是Enter
鍵,即nextLine()方法返回的是Enter鍵以前沒有被讀取的全部字符,它是能夠獲得帶空格的字符串的。

3.咱們能夠經過代碼來測試
code1:


code2:咱們換了一個nextLine() 和next()的順序

public class TestNext {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String a = in.next();
        String b = in.nextLine();
        System.out.println("a : " + a);
        System.out.println("b : " + b);
    }
}
輸入:
aa aa
輸出:
a : aa
b :  aa

Process finished with exit code 0
複製代碼public class TestNext {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String b = in.nextLine();
        String a = in.next();
        System.out.println("a : " + a);
        System.out.println("b : " + b);
    }
}

輸入:
aa aa
aa
輸出:
a : aa
b : aa aa

Process finished with exit code 0
複製代碼
相關文章
相關標籤/搜索