📜  在Java中声明和初始化二维数组的不同方法(1)

📅  最后修改于: 2023-12-03 15:37:36.018000             🧑  作者: Mango

在Java中声明和初始化二维数组的不同方法

在Java中,我们可以使用不同的方法来声明和初始化二维数组。下面将介绍4种不同的方法。

方法1:使用静态初始化来声明和初始化二维数组

静态初始化是一种简单和方便的方法来声明和初始化数组。我们可以在声明数组的同时给数组分配初始值。以下是一个静态初始化二维数组的示例:

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

顾名思义,“静态”意味着我们在程序运行之前就对数组进行了初始化,因此它的大小在声明时就已经确定。

方法2:在使用new运算符时初始化二维数组

我们可以使用new运算符来在Runtime时初始化数组,以下是一个示例:

int[][] arr = new int[3][3];
arr[0][0] = 1;
arr[0][1] = 2;
arr[0][2] = 3;
arr[1][0] = 4;
arr[1][1] = 5;
arr[1][2] = 6;
arr[2][0] = 7;
arr[2][1] = 8;
arr[2][2] = 9;
方法3:声明并初始化不规则二维数组

有时候我们需要声明和初始化不规则形状的二维数组,在这种情况下,通过静态或动态初始化二维数组并不容易。但是可以声明一个含有多个不同长度一维数组引用的一维数组引用,然后使用new运算符分别分配每个一维数组的长度。以下是一个不规则二维数组的示例:

int[][] arr = new int[3][];
arr[0] = new int[3];
arr[1] = new int[2];
arr[2] = new int[4];
arr[0][0] = 1;
arr[0][1] = 2;
arr[0][2] = 3;
arr[1][0] = 4;
arr[1][1] = 5;
arr[2][0] = 6;
arr[2][1] = 7;
arr[2][2] = 8;
arr[2][3] = 9;
方法4:使用for循环初始化二维数组

我们也可以使用for循环来初始化二维数组。以下是一个示例:

int[][] arr = new int[3][3];
for (int i = 0; i < arr.length; i++) {
    for (int j = 0; j < arr[i].length; j++) {
        arr[i][j] = i * 3 + j + 1;
    }
}

这个示例中,我们使用两个for循环来分别遍历行和列,并为每一个位置分配一个值。

总结

在Java中,我们有很多方法来声明和初始化二维数组。无论哪种方法,都需要考虑到数组的大小和初始值。每种方法都有其优点和局限性,需要根据具体情况选择适合的方法。