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
复制代码
相关文章
相关标签/搜索