Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中创建二维数组的语法_Java_Multidimensional Array - Fatal编程技术网

在Java中创建二维数组的语法

在Java中创建二维数组的语法,java,multidimensional-array,Java,Multidimensional Array,考虑: int[][] multD = new int[5][]; multD[0] = new int[10]; 这就是创建5行10列二维数组的方法吗 我在网上看到了这段代码,但语法没有意义。创建包含5行和10列的二维数组最常见的习惯用法是: int[][] multD = new int[5][10]; 或者,您也可以使用以下命令,这与您的命令更为相似,但您需要显式初始化每一行: int[][]multD=newint[5][]; 对于(int i=0;i

考虑:

int[][] multD = new int[5][];
multD[0] = new int[10];
这就是创建5行10列二维数组的方法吗


我在网上看到了这段代码,但语法没有意义。

创建包含5行和10列的二维数组最常见的习惯用法是:

int[][] multD = new int[5][10];
或者,您也可以使用以下命令,这与您的命令更为相似,但您需要显式初始化每一行:

int[][]multD=newint[5][];
对于(int i=0;i<5;i++){
multD[i]=新整数[10];
}

创建包含5行和10列的二维数组最常见的习惯用法是:

int[][] multD = new int[5][10];
或者,您也可以使用以下命令,这与您的命令更为相似,但您需要显式初始化每一行:

int[][]multD=newint[5][];
对于(int i=0;i<5;i++){
multD[i]=新整数[10];
}
试试:

请注意,在代码中,只有2D数组的第一行被初始化为0。 第2行到第5行根本不存在。如果您尝试打印它们,您将为它们中的每个人获得
null

尝试:

请注意,在代码中,只有2D数组的第一行被初始化为0。 第2行到第5行根本不存在。如果您尝试打印它们,您将为它们中的每个人获得
null

请尝试以下操作:

int[][] multi = new int[5][10];
。。。这是这样的缩写:

int[][] multi = new int[5][];
multi[0] = new int[10];
multi[1] = new int[10];
multi[2] = new int[10];
multi[3] = new int[10];
multi[4] = new int[10];
int array[][] = new int[3][];
array[0] = new int[3];
array[1] = new int[2];
array[2] = new int[5];
请注意,每个元素都将初始化为
int
0
的默认值,因此上述值也相当于:

int[][] multi = new int[][]{
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
};
请尝试以下操作:

int[][] multi = new int[5][10];
。。。这是这样的缩写:

int[][] multi = new int[5][];
multi[0] = new int[10];
multi[1] = new int[10];
multi[2] = new int[10];
multi[3] = new int[10];
multi[4] = new int[10];
int array[][] = new int[3][];
array[0] = new int[3];
array[1] = new int[2];
array[2] = new int[5];
请注意,每个元素都将初始化为
int
0
的默认值,因此上述值也相当于:

int[][] multi = new int[][]{
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
};

您可以按照其他人提到的方式创建它们。还有一点需要补充:您甚至可以为每一行创建一个倾斜的二维数组,不一定有相同数量的collumn,如下所示:

int[][] multi = new int[5][];
multi[0] = new int[10];
multi[1] = new int[10];
multi[2] = new int[10];
multi[3] = new int[10];
multi[4] = new int[10];
int array[][] = new int[3][];
array[0] = new int[3];
array[1] = new int[2];
array[2] = new int[5];

您可以按照其他人提到的方式创建它们。还有一点需要补充:您甚至可以为每一行创建一个倾斜的二维数组,不一定有相同数量的collumn,如下所示:

int[][] multi = new int[5][];
multi[0] = new int[10];
multi[1] = new int[10];
multi[2] = new int[10];
multi[3] = new int[10];
multi[4] = new int[10];
int array[][] = new int[3][];
array[0] = new int[3];
array[1] = new int[2];
array[2] = new int[5];

我们可以声明二维数组,并在声明时直接将元素存储为:

int marks[][]={{50,60,55,67,70},{62,65,70,70,81},{72,66,77,80,69}};
这里int表示存储在数组中的整型元素,数组名为“marks”。int是“{”和“}”大括号内表示的所有元素的数据类型,因为数组是具有相同数据类型的元素集合

回到我们上面写的语句:每一行元素都应该写在花括号内。行和每行中的元素应以逗号分隔

现在观察下面的语句:可以得到3行5列,因此JVM创建3*5=15个内存块。这些块可以单独称为:

marks[0][0]  marks[0][1]  marks[0][2]  marks[0][3]  marks[0][4]
marks[1][0]  marks[1][1]  marks[1][2]  marks[1][3]  marks[1][4]
marks[2][0]  marks[2][1]  marks[2][2]  marks[2][3]  marks[2][4]

注:
如果要存储n个元素,那么数组索引从零开始,到n-1结束。 创建二维数组的另一种方法是首先声明数组,然后使用new运算符为其分配内存

int marks[][];           // declare marks array
marks = new int[3][5];   // allocate memory for storing 15 elements
通过将以上两种方法结合起来,我们可以写出:

int marks[][] = new int[3][5];

我们可以声明二维数组,并在声明时直接将元素存储为:

int marks[][]={{50,60,55,67,70},{62,65,70,70,81},{72,66,77,80,69}};
这里int表示存储在数组中的整型元素,数组名为“marks”。int是“{”和“}”大括号内表示的所有元素的数据类型,因为数组是具有相同数据类型的元素集合

回到我们上面写的语句:每一行元素都应该写在花括号内。行和每行中的元素应以逗号分隔

现在观察下面的语句:可以得到3行5列,因此JVM创建3*5=15个内存块。这些块可以单独称为:

marks[0][0]  marks[0][1]  marks[0][2]  marks[0][3]  marks[0][4]
marks[1][0]  marks[1][1]  marks[1][2]  marks[1][3]  marks[1][4]
marks[2][0]  marks[2][1]  marks[2][2]  marks[2][3]  marks[2][4]

注:
如果要存储n个元素,那么数组索引从零开始,到n-1结束。 创建二维数组的另一种方法是首先声明数组,然后使用new运算符为其分配内存

int marks[][];           // declare marks array
marks = new int[3][5];   // allocate memory for storing 15 elements
通过将以上两种方法结合起来,我们可以写出:

int marks[][] = new int[3][5];
int行=5;
int cols=10;
int[]multD=新的int[rows*cols];
对于(int r=0;r
享受吧

int行=5;
int cols=10;
int[]multD=新的int[rows*cols];
对于(int r=0;r

享受吧

在Java中,二维数组可以声明为与一维数组相同。在一维数组中,你可以这样写

  int array[] = new int[5];
其中int是一种数据类型,array[]是一种数组声明,
newarray
是一种数组,其对象有五个索引

这样,您可以编写如下所示的二维数组

  int array[][];
  array = new int[3][4];
这里的
array
是一种int数据类型。我首先声明了这种类型的一维数组,然后创建了一个3行4列的数组

在代码中

int[][] multD = new int[5][];
multD[0] = new int[10];
表示您已经创建了一个包含五行的二维数组。在里面
第一行有10列。在Java中,您可以根据需要为每一行选择列大小。

在Java中,二维数组可以声明为与一维数组相同。在一维数组中,你可以这样写

  int array[] = new int[5];
int [][] twoDim = new int [5][5];

int a = (twoDim.length);//5
int b = (twoDim[0].length);//5

for(int i = 0; i < a; i++){ // 1 2 3 4 5
    for(int j = 0; j <b; j++) { // 1 2 3 4 5
        int x = (i+1)*(j+1);
        twoDim[i][j] = x;
        if (x<10) {
            System.out.print(" " + x + " ");
        } else {
            System.out.print(x + " ");
        }
    }//end of for J
    System.out.println();
}//end of for i
其中int是一种数据类型,array[]是一种数组声明,
newarray
是一种数组,其对象有五个索引

这样,您可以编写如下所示的二维数组

  int array[][];
  array = new int[3][4];
这里的
array
是一种int数据类型。我首先声明了这种类型的一维数组,然后创建了一个3行4列的数组