java如何输入数组里的数

java如何输入数组里的数

作者:Rhett Bai发布时间:2026-02-13阅读时长:0 分钟阅读次数:2

用户关注问题

Q
Java中如何从控制台读取数组元素?

我想在Java程序中让用户输入多组数字并存储到数组里,应该怎么实现?

A

使用Scanner类读取数组元素

可以使用java.util.Scanner类读取用户输入的数据,先通过循环依次读取每个元素,存入数组。例如:

import java.util.Scanner;

public class InputArray {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = 5; // 数组大小
        int[] arr = new int[n];
        System.out.println("请输入" + n + "个整数:");
        for (int i = 0; i < n; i++) {
            arr[i] = scanner.nextInt();
        }
        scanner.close();
        // 数组已经存储了输入的整数
    }
}
Q
Java读取数组时如何处理输入异常?

如果用户输入的不是整数,Java程序读取数组元素时该怎么避免崩溃?

A

使用异常处理或输入验证避免错误

读取整数时可以用try-catch捕获InputMismatchException异常,提示用户重新输入。或者在读取前用Scanner的hasNextInt()方法判断输入是否为整数。例如:

if (scanner.hasNextInt()) {
    arr[i] = scanner.nextInt();
} else {
    System.out.println("请输入有效的整数");
    scanner.next(); // 跳过错误输入
    i--; // 保持循环次数
}
Q
能否通过命令行参数给Java程序传递数组元素?

除了运行时输入,Java程序还能用什么方式给数组赋值?

A

命令行参数或硬编码赋值方式

运行Java程序时可以通过命令行参数传入字符串数组,程序内将其转换成所需数据类型。另外也可以直接在代码中定义数组,比如:

int[] arr = {1, 2, 3, 4, 5};

命令行传参示例:

java MyProgram 10 20 30 40

程序中可用args参数接收,然后将字符串转换为整数存入数组。