我们要知道,Java中本没有多维数组这个概念,因为从数组底层的运行机制上来看Java没有多维数组,但是Java提供了支持多维数组的语法,可以实现多维数组的功能,比如,三维数组int arr[][][]、四维数组int arr[][][][],以此类推。
Java采用“数组的数组”声明多维数组,一个二维数组是由若干个一维数组构成的,那么一个三维数组就是由若干个二位数组构成的,也就是说,假设将一个三维数组看作一个一维数组,那这个三维数组的每个元素都是二维数组,以此类推,我们就可以得到任何多维数组。
例如:
public class Main { public static void main(String[] args) { String[][][] name = {{{"小d","小o","小t"},{"小c","小p"}},{{"小赵","小钱"},{"小孙","小李","小周"}},{{"吴月","郑阳"},{"王星","冯云","陈雪"}}}; for(int i = 0;i<name.length;i++) { for(int j = 0;j<name[i].length;j++) { for(int k = 0;k<name[i][j].length;k++) { System.out.println("name["+i+"]["+j+"]["+k+"]="+name[i][j][k]); } } } } }
运行结果如下:
name[0][0][0]=小d name[0][0][1]=小o name[0][0][2]=小t name[0][1][0]=小c name[0][1][1]=小p name[1][0][0]=小赵 name[1][0][1]=小钱 name[1][1][0]=小孙 name[1][1][1]=小李 name[1][1][2]=小周 name[2][0][0]=吴月 name[2][0][1]=郑阳 name[2][1][0]=王星 name[2][1][1]=冯云 name[2][1][2]=陈雪
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程