【视频+图文新手也友好】二维数组详解+例题(内含练习题彩蛋喔~)
目录
总是让二维数组绕迷糊该怎么办?
快和小乔一起来用一个超具体、好理解的例子一起学习吧~
保证让你看后收获满满!!
一、视频讲解
二、多维数组的介绍
- java中所谓的多维数组,实际上是由一维数组嵌套而成。
- 即一维数组的元素是另外一个一维数组时则称为二维数组
- 以此类推,一维数组的多次嵌套就构成了二维数组
三、多维数组的使用(以二维数组为例)
(一)静态初始化——指定数组内容
以下面图片为例子,便于大家理解
1.一般格式:
数据类型 [ ] [ ] 数组名称 = new 数据类型 [ ] [ ] {{元素1,元素2,......},{元素1,元素2,......},{......}};
eg:string [ ] [ ] wodeaidou = new string [ ] [ ] {{"易烊千玺","男"},{"小乔","女"},{"小乔1","女"},{"小乔2","女"},{"小乔3","女"}};
2.简便格式:
数据类型 [ ] [ ] 数组名称 ={{元素1,元素2,......},{元素1,元素2,......},{......}};
eg:string [ ] [ ]** wodeaidou ={{"易烊千玺","男"},{"小乔","女"},{"小乔1","女"},{"小乔2","女"},{"小乔3","女"}}**;
(二)动态初始化——指定数组长度
以下面图片为例子,便于大家理解
eg:string [ ] [ ] wodeaidou = new string [5] [4];
eg:string [ ] [ ] wodeaidou = new string [5] [ ];
四、二维数组的遍历
1.代码:
package sort; public class arrayexerciset { public static void main(string[] args) { string wodeaidou[][] = new string[5][2];// 创建5个一维数组,每一一维数组中存放2个元素 wodeaidou[0][0] = "易烊千玺"; wodeaidou[0][1] = "男"; wodeaidou[1][0] = "小乔"; wodeaidou[1][1] = "女"; wodeaidou[2][0] = "小乔1"; wodeaidou[2][1] = "女"; wodeaidou[3][0] = "小乔2"; wodeaidou[3][1] = "女"; wodeaidou[4][0] = "小乔3"; wodeaidou[4][1] = "女"; for (int i = 0; i < wodeaidou.length; i++) {// 遍历一维数组的个数即wodeaidou.length为5(行数) for (int j = 0; j < wodeaidou[i].length; j++) {// 遍历每个一维数组中元素的个数即wodeaidou[i].length为2(列数) system.out.print(wodeaidou[i][j]);// 每遍历一次输出一次 } system.out.println(); } } }
2.讲解
(1)执行 string wodeaidou[][] = new string[5][2];
后结果如下图:
(因为此时没有初始化,所以存储的是string类型数组的默认值null)
(2)执行下面代码,执行完后得到如下图片:
wodeaidou[0][0] = "易烊千玺"; wodeaidou[0][1] = "男"; wodeaidou[1][0] = "小乔"; wodeaidou[1][1] = "女"; wodeaidou[2][0] = "小乔1"; wodeaidou[2][1] = "女"; wodeaidou[3][0] = "小乔2"; wodeaidou[3][1] = "女"; wodeaidou[4][0] = "小乔3"; wodeaidou[4][1] = "女";
结果:
(3)遍历数组:
i = 0 | i < wodeaidou.length(即i<5) | j=0 | j < wodeaidou[0].length(即j<2) | 输出wodeaidou[0] [0]即"易烊千玺" |
---|---|---|---|---|
i = 0 | i < wodeaidou.length(即i<5) | j=1 | j < wodeaidou[0].length(即j<2) | 输出wodeaidou[0] [1]即"男" |
i = 1 | i < wodeaidou.length(即i<5) | j=0 | j < wodeaidou[1].length(即j<2) | 输出wodeaidou[1] [0]即"小乔" |
i = 1 | i < wodeaidou.length(即i<5) | j=1 | j < wodeaidou[1].length(即j<2) | 输出wodeaidou[1] [1]即"女" |
i = 2 | i < wodeaidou.length(即i<5) | j=0 | j < wodeaidou[2].length(即j<2) | 输出wodeaidou[2] [0]即"小乔1" |
i = 2 | i < wodeaidou.length(即i<5) | j=1 | j < wodeaidou[2].length(即j<2) | 输出wodeaidou[2] [1]即"女" |
i = 3 | i < wodeaidou.length(即i<5) | j=0 | j < wodeaidou[3].length(即j<2) | 输出wodeaidou[3] [0]即"小乔2" |
i = 3 | i < wodeaidou.length(即i<5) | j=1 | j < wodeaidou[3].length(即j<2) | 输出wodeaidou[3] [1]即"女" |
i = 4 | i < wodeaidou.length(即i<5) | j=0 | j < wodeaidou[4].length(即j<2) | 输出wodeaidou[4] [0]即"小乔3" |
i = 4 | i < wodeaidou.length(即i<5) | j=1 | j < wodeaidou[4].length(即j<2) | 输出wodeaidou[4] [1]即"女" |
(4)输出结果:
(5)总结:
- 二维数组的遍历需要使用双重for循环
- 第一个for循环得到一维数组的个数(即行数)
- 第二个for循环得到每个一维数组中存放的元素的个数(即每行的列数)
for (int i = 0; i < wodeaidou.length; i++) {// 遍历一维数组的个数即wodeaidou.length为5(行数) for (int j = 0; j < wodeaidou[i].length; j++) {// 遍历每个一维数组中元素的个数即wodeaidou[i].length为2(列数)
五、练习题彩蛋
推荐你看:
- 【视频+图文新手也友好】java一维数组详细讲解(内含练习题答案+详解彩蛋喔~)点击这里即可查看
- 【视频+图文新手也友好】java ++i(前自增)和i++(后自增)用法详解点击这里即可查看
双重for循环【视频+图文】讲解传输门:点击这里即可查看
- 带continue语句的双重for循环【视频+图文】讲解传输门:点击这里即可查看
带break语句的双重for循环【视频+图文】讲解传输门:点击这里即可查看
【你需要的各种数据类型转换,这里都有~】传输门:点击这里即可查看
如果你觉得这篇文章还不错,麻烦帮我点个赞鸭!可以让更多人看到这篇文章。让我有动力继续更技术文~
上一篇: Seafile私有云盘搭建详解
下一篇: Vue基本使用