Java 二维数组创建及使用方式

  

Java 二维数组是一个数组,数组的每个元素又是一个数组,因此也被称为数组的数组。在Java中,可以使用两种方式来创建二维数组:静态初始化和动态初始化。

静态初始化

静态初始化是在创建数组时直接给数组赋初值,这种方式代码简单,但只能用于初始化固定长度的数组,不能动态添加和删除元素。

示例:

int[][] a = {{1,2,3},{4,5,6},{7,8,9}}; //用静态初始化的方式创建一个3x3的int数组

上述代码创建了一个3x3的二维数组a,其元素为:

1 2 3
4 5 6
7 8 9

动态初始化

动态初始化是在创建数组时指定数组的长度,然后再通过遍历等方式给数组赋值。这种方式代码较为复杂,但适用于需要动态添加和删除元素的情况。

示例:

int[][] b = new int[3][3]; //用动态初始化的方式创建一个3x3的int数组

//遍历数组并赋值
for(int i=0; i<3; i++){
    for(int j=0; j<3; j++){
        b[i][j] = i*3 + j + 1;
    }
}

上述代码创建了一个3x3的二维数组b,并通过遍历给数组赋值,其元素为:

1 2 3
4 5 6
7 8 9

访问二维数组元素

Java二维数组的访问方式与一维数组类似,使用下标索引即可。对于二维数组a来说,可以通过a[i][j]来访问第i行第j列的元素。

示例:

int[][] a = {{1,2,3},{4,5,6},{7,8,9}}; //用静态初始化的方式创建一个3x3的int数组
int x = a[1][2]; //访问第2行第3列的元素,结果为6

二维数组的实际应用

二维数组广泛应用于图形学、游戏开发、数组排列等领域。通过二维数组,可以方便地表示和处理二维物体、平面上的图形和表格数据等。例如,可以利用二维数组来实现一个井字棋游戏,如下所示:

char[][] board = new char[3][3]; //创建一个3x3的char数组,用于存储井字棋游戏的棋盘

//初始化棋盘
for(int i=0; i<3; i++){
    for(int j=0; j<3; j++){
        board[i][j] = '-';
    }
}

//显示棋盘
for(int i=0; i<3; i++){
    for(int j=0; j<3; j++){
        System.out.print(board[i][j] + " ");
    }
    System.out.println();
}

//玩家下棋
int x = 1; //假设玩家选择第2行第1列下棋
int y = 0;
board[x][y] = 'X'; //将棋盘上的该位置赋为X

//显示更新后的棋盘
for(int i=0; i<3; i++){
    for(int j=0; j<3; j++){
        System.out.print(board[i][j] + " ");
    }
    System.out.println();
}

上述代码通过二维数组实现了一个井字棋游戏,演示了二维数组的动态创建和访问方式。

相关文章