您的位置:首页 > 其它

Scanner 类中的 next() 与 nextLine() 区别

2014-04-02 19:07 239 查看
在使用 Scanner 类时,

next() 表示读取到有效数据后,才会往下执行。

而 nextLine() 不一样,只要它的前面出现个回车等分隔符,它不管有没有读取到数据,它都会去读取并往下执行。

看下面的一个键盘录入的例子吧!

Scanner s = new Scanner(System.in);

String ss = s.nextLine();

System.out.println("............."+ss); //这里,只要上面你按下回车了,不管有没有录入数据,它都会往下执行,只是数据为空

而如果你使用String st = s.next(); 它就要一定读到有效数据,不然不会往下执行。

所以,要注意下面的程序了

Scanner s = new Scanner(System.in);

int a = s.nextInt();

String ss = s.nextLine(); //这里是不会等待用户输入的,直接输出下面两个语句了,因为在上面 读取一个 整数后 ,你按了回车。

System.out.println(a);

System.out.println(ss);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: