亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

Java 多维数组

Java 多维数组

在本教程中,我们将通过示例学习使用二维数组和三维数组的Java多维数组。

在我们了解多维数组之前,请确保您了解Java数组。

多维数组是数组的数组。多维数组的每个元素都是一个数组本身。例如,

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

在这里,我们创建了一个名为 a 的多维数组 .它是一个二维数组,最多可以容纳12个元​​素,

<图>

请记住,Java 使用从零开始的索引,即 Java 中数组的索引从 0 开始,而不是 1。

让我们再举一个多维数组的例子。这次我们将创建一个 3 维数组。例如,

String[][][] data = new String[3][4][2];

这里,数据 是一个 3d 数组,最多可容纳 24 (3*4*2) 个 String 类型的元素 .


如何在Java中初始化一个二维数组?

下面是我们如何在 Java 中初始化一个二维数组。

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

正如我们所见,多维数组的每个元素本身就是一个数组。而且,与 C/C++ 不同的是,Java 中多维数组的每一行可以有不同的长度。

<图>

示例:二维数组

class MultidimensionalArray {
    public static void main(String[] args) {

        // create a 2d array
        int[][] a = {
            {1, 2, 3}, 
            {4, 5, 6, 9}, 
            {7}, 
        };
      
        // calculate the length of each row
        System.out.println("Length of row 1: " + a[0].length);
        System.out.println("Length of row 2: " + a[1].length);
        System.out.println("Length of row 3: " + a[2].length);
    }
}

输出

Length of row 1: 3
Length of row 2: 4
Length of row 3: 1

在上面的例子中,我们创建了一个名为 a 的多维数组 .由于多维数组的每个组件也是一个数组(a[0] , a[1]a[2] 也是数组)。

在这里,我们使用 length 属性来计算每一行的长度。


示例:使用循环打印二维数组的所有元素

class MultidimensionalArray {
    public static void main(String[] args) {

        int[][] a = {
            {1, -2, 3}, 
            {-4, -5, 6, 9}, 
            {7}, 
        };
      
        for (int i = 0; i < a.length; ++i) {
            for(int j = 0; j < a[i].length; ++j) {
                System.out.println(a[i][j]);
            }
        }
    }
}

输出

1
-2
3
-4
-5
6
9
7

我们还可以使用 for...each 循环来访问多维数组的元素。例如,

class MultidimensionalArray {
    public static void main(String[] args) {

        // create a 2d array
        int[][] a = {
            {1, -2, 3}, 
            {-4, -5, 6, 9}, 
            {7}, 
        };
      
        // first for...each loop access the individual array
        // inside the 2d array
        for (int[] innerArray: a) {
            // second for...each loop access each element inside the row
            for(int data: innerArray) {
                System.out.println(data);
            }
        }
    }
}

输出

1
-2
3
-4
-5
6
9
7

在上面的例子中,我们创建了一个名为 a 的二维数组 .然后我们使用 for 循环和 for...each 循环访问数组的每个元素。


如何在Java中初始化一个3d数组?

让我们看看如何在 Java 中使用 3d 数组。我们可以初始化一个类似于 2d 数组的 3d 数组。例如,

// test is a 3d array
int[][][] test = {
        {
          {1, -2, 3}, 
          {2, 3, 4}
        }, 
        { 
          {-4, -5, 6, 9}, 
          {1}, 
          {2, 3}
        } 
};

基本上,3d 数组是 2d 数组的数组。 3d 数组的行长度也可以变化,就像 2d 数组一样。


示例:3维数组

class ThreeArray {
    public static void main(String[] args) {

        // create a 3d array
        int[][][] test = {
            {
              {1, -2, 3}, 
              {2, 3, 4}
            }, 
            { 
              {-4, -5, 6, 9}, 
              {1}, 
              {2, 3}
            } 
        };

        // for..each loop to iterate through elements of 3d array
        for (int[][] array2D: test) {
            for (int[] array1D: array2D) {
                for(int item: array1D) {
                    System.out.println(item);
                }
            }
        }
    }
}

输出

1
-2
3
2
3
4
-4
-5
6
9
1
2
3

java

  1. C# 数组
  2. Java 运算符
  3. Java 复制数组
  4. Java 接口
  5. Java try-with-resources
  6. Java 注释
  7. C++ 中的数组 |声明 |初始化 |指向数组示例的指针
  8. C++ 动态分配数组的例子
  9. Java 数组教程:声明、创建、初始化 [示例]
  10. 如何在 Java 中创建对象数组
  11. Java程序中的选择排序与示例
  12. MATLAB - 数组