Java中二维数组中每个维度的长度

Java中二维数组中每个维度的长度,java,arrays,jagged-arrays,Java,Arrays,Jagged Arrays,我想有一种方法可以知道多维数组中每个维度的长度。我有下面的代码,在for条件中,我想更改条件,使其适用于每个数组 import javax.swing.JOptionPane; public class Arrays_bidimensionales { public static void main(String[] args) { int[][] matriz1 = new int[4][5]; for (int i = 0; i < 4; i

我想有一种方法可以知道多维数组中每个维度的长度。我有下面的代码,在
for
条件中,我想更改条件,使其适用于每个数组

import javax.swing.JOptionPane;

public class Arrays_bidimensionales {

    public static void main(String[] args) {
        int[][] matriz1 = new int[4][5];
        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 5; j++) {
                matriz1[i][j] = Integer.parseInt(JOptionPane.showInputDialog("Introduce el valor para la posición" + i + "." + j));
                System.out.print(" " + matriz1[i][j] + " ");
            }
            System.out.println();
        }
    }
}
import javax.swing.JOptionPane;
公共类数组\u二维{
公共静态void main(字符串[]args){
int[][]矩阵1=新的int[4][5];
对于(int i=0;i<4;i++){
对于(int j=0;j<5;j++){
matriz1[i][j]=Integer.parseInt(JOptionPane.showInputDialog(“介绍el valor para la posición”+i+”+j));
System.out.print(“+matriz1[i][j]+”);
}
System.out.println();
}
}
}

我试过使用
matriz1.length
,但似乎只适用于具有唯一维度的数组。

Java中的数组具有
length
属性,因此您可以动态查询数组的长度,即使它是多维锯齿数组:

int [][] matriz1 = // initialized somehow...
for (int i = 0 ; i < matriz1.length ; i++) {
    for (int j = 0 ; j < matriz1[i].length; j++) {
        // Do something with matriz1[i][j]
int[]matriz1=//以某种方式初始化。。。
对于(int i=0;i
您的2D阵列看起来像这样

int[][] matriz1 = new int[4][5];

  • 要获得第一个维度的长度,可以使用

    int length1 = matriz1.length; //length1 = 4
    
    这将为您提供
    4

    int[][] matriz1 = new int[4][5]; //this way you're refering to the first dimension
                              ^
    
  • 要得到第二维度的长度,只需找到任意一个维度的长度 元素。下面是一个使用第零个索引的示例

    int length2 = matriz1[0].length; //length2 = 5
    
    这将为您提供
    5

    int[][] matriz1 = new int[4][5]; //this way you're refering to second dimension
                                 ^
    

  • matriz1[0]。例如,长度。工作正常!感谢所有的回复。