我正在在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,并且它不会进一步执行。
任何人都可以帮我吗?
尝试使用以下方式:
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]