多维数组

来源:互联网 发布:openresty java开发 编辑:程序博客网 时间:2024/05/02 04:53

二维数组[][]:数组中的数组
例如:二维数组 ,就是原来一维数组的每一个元素又是一个数组

1、多维数组的声明和初始化
(1)格式1(动态初始化):int[][] arr = new int[3][2];
定义了名称为arr的二维数组, 二维数组中有3个一维数组, 每一个一维数组中有2个元素
一维数组的名称分别为arr[0], arr[1], arr[2],每一个一维数组又分别有两个元素,例如
arr[0][0],arr[0][1]
arr[1][0],arr[1][1]
arr[2][0],arr[2][1]

(2)格式2(动态初始化):int[][] arr = new int[3][];
二维数组中有3个一维数组。 每个一维数组都是默认初始化值null (注意:区别于格式1)
可以对这个三个一维数组分别进行初始化:
arr[0] = new int[3]; arr[1] = new int[1]; arr[2] = new int[2];
注意:多维数组的第一个维度,必须指定长度
例如:int[][]arr = new int[][3]; //非法

或者
arr[0] = new int[]{2,4,5};
arr[1] = new int[]{5,6};
arr[2] = new int[]{7,4,1,2,6};

(3)格式3(静态初始化):int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};
定义一个名称为arr的二维数组,二维数组中有三个一维数组
每一个一维数组中具体元素也都已初始化
第一个一维数组 arr[0] = {3,8,2};
第二个一维数组 arr[1] = {2,7};
第三个一维数组 arr[2] = {9,0,1,6};

4、特别说明
(1)Java中多维数组不必都是规则矩阵形式
例如:

int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};arr[0].length=3;  arr[1].length=2;   arr[2].length=4;

这里写图片描述

这里写图片描述

(2)注意特殊写法情况: int[] x,y[]; x是一维数组,y是二维数组。
不建议写这种非主流的代码格式

(3)格式
一维数组:int[] x 或者int x[]
二维数组:int[][] y 或者 int[] y[] 或者 int y[][]

0 0
原创粉丝点击