Java : Get only 1 line of integers from the console?

标签 java input console newline

我最近学习了 Java,但在某些控制台输入方面遇到了问题。

基本上,我想以如下格式从控制台读取整数数组:

1 2 3 4 5 6

我查看了论坛上的一些示例,并决定使用扫描仪 nextInt() 方法来执行此操作。

我的代码目前如下所示:

Scanner get = new Scanner(System.in);
List<Integer> elements = new ArrayList<>();

while (get.hasNextInt()) {           
        elements.add(get.nextInt());
    }

这段代码的问题是,当我在控制台上按“Enter”键时,while 循环不会停止。 这意味着当我输入一些数字(1 3 5 7)然后按回车键后,程序不会继续执行,而是等待更多的整数。它停止的唯一方法是我向控制台输入一个字母。

我尝试添加 !get.hasNextLine() 作为 while 循环中的条件,但这没有帮助。

如果有人知道如何解决这个问题,我将非常感激。

最佳答案

如果您只想阅读仅一行,最简单的答案可能是最好的:)

扫描仪输入 = new Scanner(System.in); String hString = in.nextLine(); String[] hArray = hString.split("");

现在,在数组 hArray 中,您拥有输入中的所有元素,您可以像 hArray[0] 那样调用它们

关于Java : Get only 1 line of integers from the console?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36113743/

相关文章:

Java:是否可以使用final设置未初始化类的值?

c++ - 一个 C++ 文件的输出作为另一个文件的输入?

javascript - 在node.js中执行退出时不显示控制台警告

java - 检查 dir 存在和 dir contains 在 dropbox api 上不起作用

java - 如何在鼠标进入时将KeyListener 添加到JComponent?

java - Android:将数据从java发送到php文件并有响应

javascript - 如何使用javascript检查数字类型输入的有效性?

android - 未定义不是 TextInput onSubmitEditing Focus 的对象

java - Docker Java 应用程序无法从控制台获取输入

c# - 从任务计划程序运行时,Windows 服务器上的预定 C# 控制台应用程序不显示控制台