【Java基础】二维数组
1.二维数组
数组是引用类型,数组中的元素可以是引用数据类型,因此在一维数组中每个元素都为一个一维数组,即为二维数组。相当于一个表格
2.初始化
(1)静态初始化
int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};
说明
第二个元素为arr[1] = {2,7}
,第二个元素中的第一个为arr[1][0] = 2
。
二维数组的长度为arr.length
,第二个元素的长度为arr[1].length
。
特殊写法:声明两个数组 int[] x,y[];
,x是一维数组,y是二维数组。
(2)动态初始化
① 第一种
int[][] arr = new int[3][2];
二维数组中有3个元素,每个元素是一个一维数组,每个一维数组有2个元素。
一维数组的名称分别为:arr[0],arr[1],arr[2]
给第一个一维数组中的第二个元素赋值arr[0][1] = 78;
② 第二种
int[][] arr = new int[3][];
二维数组中有3个一维数组,每一个都是默认初始化为null,一维数组中的元素不能调用,否则报错。
分别进行3个一维数组的初始化
arr[0] = new int[3]; arr[1] = new int[2]; arr[3] = new int[4];
这种写法int[][] arr = new int[][3]
是错误的。
3.二维数组的遍历
for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[i].length; j++) { System.out.print(arr[i][j]+"\t"); } System.out.println(); }
4.内存解析
int[][] arr = new int[4][]; arr[1] = new int[]{1, 2, 3}; arr[2] = new int[4]; arr[2][1] = 5;
(1)先执行int[][] arr = new int[4][];
堆内存中开辟连续空间,一维数组为null
(2)执行arr[1] = new int[]{1, 2, 3};
(3)执行
arr[2] = new int[4]; arr[2][1] = 5;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本