Java-如何将以空格分隔的整数读取为数组

我在我的项目中遇到了麻烦,因为我无法正确开始,即从用户读取一行用空格隔开的整数并将值放入数组中。

    System.out.println("Enter the elements separated by spaces: ");

String input = sc.next();

StringTokenizer strToken = new StringTokenizer(input);

int count = strToken.countTokens();

//Reads in the numbers to the array

System.out.println("Count: " + count);

int[] arr = new int[count];

for(int x = 0;x < count;x++){

arr[x] = Integer.parseInt((String)strToken.nextElement());

}

这就是我所拥有的,它似乎只读取数组中的第一个元素,因为初始化count时,出于某种原因将其设置为1。

谁能帮我?以其他方式执行此操作会更好吗?

回答:

使您的代码正常工作仅需进行很小的更改。该 错误 是在这一行:

String input = sc.next();

正如我在问题下的评论中指出的那样,它仅读取输入的下一个标记。请参阅文档。

如果您将其替换为

String input = sc.nextLine();

它会执行您想要的操作,因为nextLine()会消耗整个输入行。

以上是 Java-如何将以空格分隔的整数读取为数组 的全部内容, 来源链接: utcz.com/qa/429209.html

回到顶部