
java中如何输入一个数组并读取
用户关注问题
在Java中如何通过Scanner类输入数组?
我想用Scanner类读取用户输入的数组元素,应该怎么实现?
使用Scanner读取数组元素的基本方法
可以先创建Scanner对象,然后通过循环读取每个元素,存储到数组中。例如:
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
这里先读取数组长度,按顺序读取对应数量的整数。
如何读取多维数组的输入?
Java中如果让我输入一个二维数组,代码该如何编写?
循环嵌套读取二维数组元素
二维数组可以通过两层循环来读取。假设二维数组大小为m行n列,可用以下代码:
int m = sc.nextInt();
int n = sc.nextInt();
int[][] arr = new int[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
arr[i][j] = sc.nextInt();
}
}
这种方法适合矩阵形式的输入。
是否可以用命令行参数输入数组?
我想通过命令行参数传入数组元素,Java程序该怎么读取?
利用main方法的String[] args接收数组元素
程序执行时在命令行传入参数,数组元素会作为字符串放入String[] args中。可以遍历args,将其转换成相应类型存储到数组:
public static void main(String[] args) {
int[] arr = new int[args.length];
for (int i = 0; i < args.length; i++) {
arr[i] = Integer.parseInt(args[i]);
}
// arr现在包含所有输入元素
}
这样就能实现通过命令行输入数组。