next():
1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之间遇到的空白,next()方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或结束符。
4、next()不能得到带有空格的字符串
nextLine():
1、一回车键为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
2、可以获得空白
通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
例子: public class Demo01 { public static void main(String[] args) { //从键盘接收数据 Scanner scanner = new Scanner(System.in); System.out.println("使用nextline方式接收"); //判断是否还有输入 if (scanner.hasNextLine()){ String str = scanner.nextLine(); System.out.println("输出内容是:"+str); } scanner.close(); } }
键盘输入:我不是小白 拜拜
输出结果:我不是小白 拜拜
public class Demo01 { public static void main(String[] args) { //从键盘接收数据 Scanner scanner = new Scanner(System.in); System.out.println("使用nextline方式接收"); //判断是否还有输入 if (scanner.hasNextLine()){ String str = scanner.next(); System.out.println("输出内容是:"+str); } scanner.close(); } }
键盘输入:我不是小白 拜拜
输出结果:我不是小白
总结:next()方法无法获得带有空白符的字符串,且出现有效字符后,空白符后面的字符将全部自动去除