java中next()和nextline()的區別

next()和nextline()都是Scanner類中的方法,都可以用來拾取控制檯輸入。
兩者之間的不同是:
next()不能識別空格/tab鍵(當然空格和tab鍵後的內容也不會識別),並且以enter鍵截止;
nextline()可以識別空格/tab鍵及其後的內容,以enter鍵截止;

public class text2 {
    public static void main(String[] args) {
        Scanner s= new Scanner(System.in);
        System.out.println("輸入b");
        String  b =s.nextLine();
        System.out.println("輸入a");
        String  a =s.next();

        System.out.println(a+"\n"+b);
    }
}

輸入及輸出結果
在這裏插入圖片描述
調換next()和nextline()順序

public class text2 {
    public static void main(String[] args) {
        Scanner s= new Scanner(System.in);

        System.out.println("輸入a");
        String  a =s.next();
        System.out.println("輸入b");
        String  b =s.nextLine();

        System.out.println(a+"\n"+b);
    }
}

輸入及輸出結果
在這裏插入圖片描述可以看出在next()輸入字符串和空格和Tab鍵後,再enter鍵後,程序直接將空格後內容當做了nextline()的輸入,然後直接結果輸出了。

發佈了28 篇原創文章 · 獲贊 9 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章