JAVA_SE基础——21.二维数组的定义

2 二维数组的定义

基本与一维数组类似

//定义一个3行5列的二维数组

//方法1,先new对象,然后再初始化每个元素

int[][] a = new int[3][5]; 

a[0][0]=1;

a[0][1]=2;

a[0][2]=3;

class  BBB
{
	public static void main(String[] args) 
	{
		int[][] a = new int[3][4]; 

		a[0][0]=1;//在第一行的0角标上赋值:1

		a[1][1]=2;//在第2行的1角标上赋值:2

		a[2][2]=3;//在第3行的2角标上赋值:3
		
		System.out.println(a[0][0]);//打印第一行的0角标上的元素
		System.out.println(a[1][1]);//打印第一行的0角标上的元素
		System.out.println(a[2][2]);//打印第一行的0角标上的元素
	}
}

结果是:

1

2

3

 

//方法2,直接赋初值来创建对象

int[][] b = {{1,2}, {3,4,5,6}, {7,8,9} };

 JAVA_SE基础——21.二维数组的定义

看到上面的截图 应该都懂了吧

//方法3,new完对象直接初始化

int[][] a = new int[][] {{1,1,1,1,1}, {2,2,2,2,2}, {3,3,3,3,3} };

定义二维数组必须指定其行数,列数可以指定,可以不指定。

这样定义是正确的:int[][] d = new int[3][];

这样定义是错误的:int[][] d = new int[][4]; int[][] d = new int[][];

也可以定义不规则数组:

arr = new int[2][];

        arr[0] = new int[3];

        arr[1] = new int[5];


下面用个简单的例子来体现下二维数组的用法

class ShuzuDome 
{
	public static void main(String[] args) 
	{
		int[][] arr={{10,20,30},{40,10},{20,10}};//定义二维数组并赋值
		int sum=0;//求和
		for (int x=0;x<arr.length ;x++ )//遍历二维数组
		{
			for (int y=0;y<arr[x].length ;y++ )
			{
				sum+=arr[x][y];
			}
		}
		System.out.println(sum);
	}
}
结果:140


不懂的可以留言或者加我企鹅654249738