您的位置:首页 > 编程语言 > Java开发

【JavaSE笔记】Java常见细节性问题(三)_二维数组

2017-06-18 17:21 295 查看
二维数组

就是元素为一维数组的一个数组

1. 格式_1:

a. 数据类型 [ ] [ ] 数组名 = new 数据类型 [m]


m:表示这个二维数组有多少个一维数组

n :表示每一个一维数组的元素有多少个

b. 注意:

i. 其他格式:

1) 数据类型 数组名 [] []=new 数据类型[m]

2) 数据类型[] 数组名[] =new 数据类型[m]

ii. 不同定义的区别:

int x;

int y;

int x,y;

int [ ] x;

int [ ] y[ ];

int [ ]x,y[ ];

2. 格式_2:

a. 数据类型 [ ] [ ] 数组名 = new 数据类型 [m][ ];

m:表示这个二维数组有多少个一维数组

列的个数未给出,可以动态赋值。

例:

public static void main(String[] args) {
//定义数组
int[][] a = new int[3][];

System.out.println(a);	//[[I@175078b
System.out.println(a[0]); //null
System.out.println(a[1]); //null
System.out.println(a[2]); //null

//动态的为每一个一维数组分配空间
a[0] = new int[1];
a[1] = new int[2];
a[2] = new int[3];

System.out.println(arr[0]); //[I@42552c
System.out.println(arr[1]); //[I@e5bbd6
System.out.println(arr[2]); //[I@8ee016

System.out.println(arr[0][0]); //0
System.out.println(arr[0][1]); //0
//ArrayIndexOutOfBoundsException
//System.out.println(arr[0][2]); //错误

arr[1][0]
4000
= 100;
arr[1][2] = 200;
}

3. 格式_3:静态初始化

a. 基本格式:

数据类型 [ ] [ ] 数组名 = new 数据类型 [ ] [ ] {{元素1,元素2,…},{元素1,元素2,…},{……}};

数据类型 [ ] [ ] 数组名 = {{元素1,元素2,…},{元素1,元素2,…},{……}};

例:
public static void main(String[] args) {
//定义一个二维数组:静态初始化
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}} ;

System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);

System.out.println(arr[0][0]);//1
System.out.println(arr[1][0]); //4
System.out.println(arr[2][0]);//7
}


4. 内存图解:





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: