我正在Java编程网站上解决一个实践问题,该问题要求我输入所有必需的整数,这些整数仅用空格分隔,其中第一个数字表示数组中元素的数量,随后的数字应插入到数组中。数组。
例如,
我想通过以下方式输入:-
4 3 1 2 7
这里是数组中元素的数量4,应在数组中插入3、1、2和7。
我正在使用相同的扫描仪类,而我编写的代码如下:-
Scanner sc = new Scanner (System.in);
int [] arr = new int [10000];
int n = sc.nextInt();
for (int i=0;i<n;i++)
arr [i] = sc.nextInt();
但是当我执行代码时,它在行arr [i]=sc.nextInt();
中给出了NoSuchElementException,并且它没有进一步执行。
有人可以帮我吗?
答案 0 :(得分:1)
尝试使用此:
import java.util.*;
import java.io.*;
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String[] input = reader.readLine().split(" ");
int[] numbers = new int[input.length - 1];
for(int i = 0; i < numbers.length; i++) {
numbers[i] = Integer.parseInt(input[i+1]);
}
System.out.println("Array = "+Arrays.toString(numbers));
}
输入:
4 1 2 3 4
输出:
Array = [1, 2, 3, 4]