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