java - Scanner 类中的 next() 和 nextLine() 方法有什么区别?

标签 java java.util.scanner

next()nextLine() 之间的主要区别是什么?
我的主要目标是使用扫描仪读取所有文本,该扫描仪可能“连接”到任何来源(例如文件)。

我应该选择哪一个?为什么?

最佳答案

我总是更喜欢使用 nextLine() 读取输入,然后解析字符串。

使用next()只会返回分隔符之前的内容(默认为空格)。 nextLine() 返回当前行后自动向下移动扫描仪。

用于解析 nextLine() 数据的有用工具是 str.split("\\s+")

String data = scanner.nextLine();
String[] pieces = data.split("\\s+");
// Parse the pieces

有关 Scanner 类或 String 类的更多信息,请参阅以下链接。

扫描仪:http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html

字符串:http://docs.oracle.com/javase/7/docs/api/java/lang/String.html

关于java - Scanner 类中的 next() 和 nextLine() 方法有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59418816/

相关文章:

java - Android JSON 库的性能和可用性比较

java - 为什么 lambda 翻译需要生成静态方法?

java - 可以通过beeline连接到hive,但不能通过java连接。错误无法使用 JDBC Uri GSS 启动打开客户端传输失败

java - 将库嵌入到 jar 文件中

java - 使用java扫描仪读取文本文件

java - 在 javafx 标签中将特定单词设为斜体

java - 扫描仪细节

java - 扫描线是否逃逸?

java - 嵌套 If 语句 - 未收到预期输出 Java

java - 在使用 Scanner 读取用户输入时,我可以使用回车键作为分隔符,而不是 "\n"吗?