在Java中,你可以使用`Scanner`类来输入任意长度的数组。以下是一个简单的示例代码,展示了如何实现这一功能:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数组的元素,以空格分隔,输入任意非数字字符结束输入:");
ArrayList
arr = new ArrayList<>(); while (scanner.hasNextInt()) {
int num = scanner.nextInt();
arr.add(num);
}
System.out.println("您输入的数组为:");
for (int i : arr) {
System.out.print(i + " ");
}
scanner.close();
}
}
这段代码的工作原理如下:
1. 创建一个`Scanner`对象来读取用户的输入。
2. 提示用户输入数组的元素,元素之间用空格分隔。
3. 使用`hasNextInt()`方法检查是否有整数输入。
4. 当检测到整数输入时,使用`nextInt()`方法读取该整数并将其添加到`ArrayList`中。
5. 用户可以输入任意数量的整数,输入非数字字符将结束输入过程。
6. 最后,遍历`ArrayList`并打印出所有输入的整数。
注意,这里使用的是`ArrayList`而不是原始数组,因为`ArrayList`可以动态地调整大小,适合存储不定长度的数据集合。如果你确实需要一个原始数组,可以在读取完所有输入后将其转换为数组,但这通常不是必要的,因为`ArrayList`提供了与数组类似的接口和功能。