在Java中,从键盘读取二维数组通常涉及到Scanner类,该类提供了方便的接口来获取用户的输入。以下是如何实现从键盘读取二维数组的详细步骤和示例代码。
准备工作
首先,确保你有一个Scanner对象来读取用户的输入。这通常通过以下代码完成:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// ... 其他代码 ...
}
}
获取行数和列数
接下来,你需要从用户那里获取二维数组的行数和列数。
System.out.print("请输入行数: ");
int rows = scanner.nextInt();
System.out.print("请输入列数: ");
int cols = scanner.nextInt();
创建二维数组
使用获取到的行数和列数创建一个二维数组。
int[][] array = new int[rows][cols];
逐行逐列读取元素
使用两层循环来逐行逐列读取用户输入的数组元素。
外层循环用于控制行数,内层循环用于控制列数。
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.print("请输入第 " + (i + 1) + " 行,第 " + (j + 1) + " 列的元素: ");
array[i][j] = scanner.nextInt();
}
}
输出二维数组
最后,你可以选择打印出整个二维数组来验证输入是否正确。
System.out.println("您输入的二维数组是:");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
完整示例
将上述步骤整合到一起,以下是完整的示例代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入行数: ");
int rows = scanner.nextInt();
System.out.print("请输入列数: ");
int cols = scanner.nextInt();
int[][] array = new int[rows][cols];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.print("请输入第 " + (i + 1) + " 行,第 " + (j + 1) + " 列的元素: ");
array[i][j] = scanner.nextInt();
}
}
System.out.println("您输入的二维数组是:");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
scanner.close();
}
}
当你运行这个程序时,它会提示你输入行数和列数,然后逐行逐列地读取你的输入,并最终打印出你创建的二维数组。
