一文搞懂next 、hasNext,nextLine、hasNextLine

在Java中,HasNextNextScanner类的两个方法,它们用于读取用户输入。

HasNext方法会检查用户是否在当前行输入了一个值,如果有,它会返回true,否则返回false。Next方法会读取用户在当前行输入的值,并将其作为方法的返回值。

HasNextLineNextLine也是Scanner类的方法,它们与HasNextNext类似,但是它们读取的是用户输入的整行文本,而不是单个值。

举个例子,假设用户输入了以下内容:

Hello
World

如果我们使用Next方法读取用户的输入,那么第一次调用Next方法时,它会返回字符串“Hello”,第二次调用时会返回字符串“World”,因为这两个字符串都在同一行中。

如果我们使用NextLine方法读取用户输入,那么第一次调用NextLine方法时,它会返回整行文本“Hello\nWorld”,因为这两个字符串都在两行中。

总之,HasNext/NextHasNextLine/NextLine方法之间的区别在于它们读取的是单个值还是整行文本。

总结:

hasNext() 是检测 还有没有下一个输入

next()是指针移动到当前下标,并取出下一个输入

nextLine() 把指针移动到下一行 让然后取出当前这一行的输入

hasNextLine() 是检测下一行有没有输入

next():

1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
4、next() 不能得到带有空格的字符串。

NextLine():

1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。

posted @ 2022-12-07 16:34  UpZhou  阅读(1175)  评论(0编辑  收藏  举报