next()
-
一定要读取到有效字符后才可以结束输入
-
对输入有效字符之前的空白,next()会自动将其删掉
-
只有输入有效字符后才将其后面的输入的空白作为分割符或结束符
-
next()不能得到带有空格的字符串
package zhangzhuo.scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//创建一个扫描机器对象,用于接收键盘数据 System.out.println("用next方式接收"); if(scanner.hasNext()){ //判断用户有没有输入字符 String str = scanner.next(); System.out.println("输入的内容为: "+str); } scanner.close();//凡是使用IO流的类如果不关闭会一直占用资源 } }
结果:
nextLine()
-
以Enter为结束符,也就是说nextLine()方法返回的是回车之前的所有字符
-
可以获得空白
import java.util.Scanner; public class Demo02 { 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(); } }
结果