java中二维数组可模拟固定行列、同类型表格,本质是“数组的数组”,支持矩形或锯齿结构;声明格式为类型[][]名,初始化分静态(如{{1,2,3},{4,5,6}})和动态(如new string4);遍历常用嵌套for按行优先访问。

Java 中可以用二维数组模拟表格结构,适合行数列数固定、数据类型统一的简单场景。它本质是“数组的数组”,每行是一个一维数组,所有行长度可以相同(矩形数组)或不同(锯齿数组),处理表格时通常用矩形形式。
声明与初始化二维数组
声明格式为 类型[][] 数组名 或 类型 数组名[][];初始化分静态和动态两种:
- 静态初始化(编译期确定数据):
int[][] table = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
表示 3 行 3 列的整数表格,每对花括号是一行。 - 动态初始化(运行时分配空间):
String[][] students = new String[4][3];
创建 4 行 3 列的字符串表格,所有元素初始为 null;可后续逐个赋值,如 students[0][0] = "张三";
遍历与访问表格数据
用嵌套 for 循环按行优先顺序访问最直观:外层控制行索引 i,内层控制列索引 j。
- 打印全部内容示例:
for (int i = 0; i for (int j = 0; j System.out.print(table[i][j] + "\t");
}
System.out.println(); // 换行
} - 注意:table.length 是行数,table[i].length 是第 i 行的列数(矩形数组中各行列数相同,但写法更健壮)。
常见表格操作示例
二维数组支持基础增删查改,但“增”“删”需手动处理(因数组大小不可变):
- 查某行某列:直接用下标,如 table[1][2] 获取第 2 行第 3 列元素(索引从 0 开始)。
- 修改单元格:赋值即可,如 table[0][1] = 99;
-
计算某列总和:
int sum = 0;
for (int i = 0; i sum += table[i][1]; // 第 2 列(索引 1)所有行求和
} - 查找最大值:初始化 max = table[0][0],双循环比较更新即可。
注意事项与替代建议
二维数组轻量高效,但缺乏语义和扩展性:
- 不能直接添加/删除行或列,需创建新数组并复制数据;
- 不支持列名、行标题等元信息;
- 类型必须统一,无法混合存储(如同时存 String 和 Double);
- 实际开发中,若表格结构复杂或需频繁增删、排序、筛选,推荐用 List 或专用库(如 Apache POI 处理 Excel,JTable 展示 GUI 表格)。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











