使用nextInt()后,再使用nextLine()踩的坑

话不多说直接上图

使用nextInt()后,再使用nextLine()踩的坑

通过图片可以看到,控制台直接跳过了一次输入,进入了下一个输入,什么原因呢?问题就出现在

使用nextLine()接受数据上。下面是使用debug,调试出来的图

使用nextInt()后,再使用nextLine()踩的坑

我们发现接收到的s值为"",也就是“空字符”。scanner在扫描的过程中,结束扫描的依据是扫描到一

个空白字符。所以scanner扫描器扫到的数据是:数据+""。而nextInt只会取走数据,留下了""。而

nextLine()读取一行数据结束的依据是读到一个空白字符(如 ""),所以nextLine()不需要控制

台输入,直接获得了一个""。所以直接跳过了这一次的输入,进入了下一次输入。

上一篇:常用类:math类


下一篇:华为机考编程之,去重排序