欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

多维数组

程序员文章站 2024-03-04 15:36:23
...

1、声明二维数组变量

数据类型[][]  数组名;//int[][] matrix;

2、创建二维数组并赋值给变量

matrix = new int[5][5];

3、二维数组中元素赋值

将7赋值给第2行第1列的特定元素:matrix[1][0] = 7;

4、获取二维数组长度

二维数组实际上是一个数组,它的每个元素都是一个一维数组。二维数组长度就是行的个数,如x = new int[3][4],数组x的长度就是3,x[0]、x[1]、x[2]都是一维数组,每个数组包含4个元素,x[0].length、x[1].length、x[2].length都是4。

多维数组

5、锯齿数组

二维数组每一行长度可以不一样,这样的数组策划归纳为锯齿数组。例如:

int[][] arr = {{1,2,3,4,5},{1,2,3,4},{3,4,5},{4,5},{5}};

二维数组创建时,必须指定第一个下标,如new int[5][];

6、处理二维数组

  • 求所有元素的和
int total = 0;
for (int i = 0; i < arr.length; i++) {
	for (int j = 0; j < arr[i].length; j++) {
		total += arr[i][j];
	}
}
  • 对数组按列求和
for (int i = 0; i < arr[0].length; i++) {//列
        int total = 0;
	for (int j = 0; j < arr.length; j++) {//行
		total += arr[i][j];
	}
	System.out.println("第" + i + "列的和为:" + total);
}
  • 随意打乱:类似于一维数组中随意打乱,随机产生下标i1和j1,然后互换
for (int i = 0; i < arr.length; i++) {//行
	for (int j = 0; j < arr[i].length; j++) {//列
		int i1 = (int)(Math.random()*arr.length);
		int j1 = (int)(Math.random()*arr[i].length);
		
		//交换
	    int temp = arr[i][j];
	    arr[i][i] = arr[i1][j1];
	    arr[i1][j1] = temp;
	}
}