java Scanner中的nextLine方法的问题
今天在使用java刷算法题的时候,遇到了一些小问题,scanner的nextLine方法读入了空字符串,但是输入明明没有空字符串,于是后面在使用时产生了空指针异常。
1. 问题产生原因分析
在官方文档中显示,java的nextLine()会读取到回车结束。
此处的输入案例
1 | 10 12 |
前面使用了两次nextInt()方法来读取两个数字,然后想使用使用nextLine()来读取下一行数据,但此时读取的仍然是上一行,因为上一行中有个换行符没读取,因此nextLine()会先读取换行符,此时读出来一个空字符串。
2. 解决方法
在读取下一行数据之前,先调用一次nextLine()方法跳过换行符。