next()和nextLine()的区别
next()方法在读取内容时,会过滤掉有效字符前面的无效字符,且next()以空格键、Tab键或Enter键等视为分隔符或结束符;nextLine()方法的结束符只是Enter键;
所以next()不会得到带空格的字符串,而nextLine()可以得到带空格的字符串。
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("请输入第一个字符串:");
String s1=sc.nextLine();
System.out.println("输入的字符串是:"+s1);
System.out.print("请输入第二个字符串:");
String s2=sc.next();
System.out.println("输入的字符串是:"+s2);
}
结果如下:
我们都输入( str str)字符串,next()自动过略掉前面的空格,且碰到有效字符后的空格后,直接结束。而nextLine()输出了空格,结束键为Enter键。