开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第10天,点击查看活动详情
二维数组/多维数组
二维数组的应用场景
比如五子棋游戏,棋盘就是一个二维数组
快速入门案例
TwoDimensionalArray01.java
public class TwoDimensionArray01 {
public static void main(String[] args) {
/*
请用二维数组输出如下图形
000000
001000
020300
000000
*/
//1.从定义形式上看 int[][]
//2.可以这样理解,原来的一维数组的每个元素是一维数组,就构成二维数组
int arr[][] = {
{0,0,0,0,0,0},
{0,0,1,0,0,0},
{0,2,0,3,0,0},
{0,0,0,0,0,0}
};
for (int i = 0; i < arr.length; i++){
for (int j = 0;j < arr[i].length; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
请用二维数组输出如下图型
000000
001000
020300
000000
二维数组的使用
使用方式一:动态初始化
TwoDimensionalArray02.java
public class TwoDimensionArray02 {
public static void main(String[] args) {
int arr[][] = new int[2][3];
//遍历arr数组
for (int i = 0; i < arr.length; i++){
for (int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
1.语法:
类型[][] 数组名 = new 类型[大小][大小]
如:int a[][] = new int[2][3];
二维数组在内部的存在形式
使用方式2:动态初始化
先声明:类型 数组名[][]; TwoDimensionalArray02.java
再定义(开辟空间)数组名 = new 类型[大小][大小]
赋值(有默认值,比如 int 类型就是0)
使用演示
使用方式3:动态初始化-列数不确定
看一个需求:动态创建下面的二维数组,并输出
使用方式4:静态初始化
1.定义:
类型 数组名[][] = {{},{},{},……}
使用即可[固定方式访问]
二维数组的遍历
案例
TwoDimensionalArray05.java
int arr[][] = {{4,6},{1,5,7},{-2}};
遍历该二维数组,并求和
public class TwoDimensionArray05 {
public static void main(String[] args) {
//遍历数组并求出和
int arr[][] = {{4,6},{1,4,5,7},{-2}};
int sum = 0;
for (int i = 0; i < arr.length; i++){
for (int j = 0; j < arr[i].length; j++){
System.out.print(arr[i][j] + "\t");
sum += arr[i][j];
}
System.out.println();
}
System.out.println("sum = " + sum);
}
}