方法
Scanner中的nextInt()只会读取数值,剩下"\n"还没有读取,并将cursor放在本行中。
相当于C语言里面的scanf("%d",&i);
验证
为方便描述,创建一个Scanner 对象in
(注:标准输入System.in作为InputStream类的对象实现标准输入,可以调用它的read方法来读取键盘数据)
Scanner in = new Scanner(System.in);
如图的代码,我们只能输入数字,如果输入字母或者混着字母的数字都会出错
对比(绿色输入,黑色的是正确的输出) |
---|
换行符’\n’没有被读取,这里我就不验证了,有兴趣的话可以用Scanner 的nextLine()方法验证,nextLine()方法会将nextInt()留下的“\n”读取掉。