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 复制代码