如何在java中从大于1D的数组中获取长度值?

时间:2013-01-24 19:26:10

标签: java arrays

在java中,myArray.length会在2D数组中引用什么? E.g。

double[][] myArray = new double[3][5];

假设您希望在数组上运行几个for循环而不将行和列放在参数中以获取其值,是否有一种巧妙的方法可以执行此操作?

3 个答案:

答案 0 :(得分:5)

使用myArray.lengthmyArray[0].length。 (这假设您的所有“子”阵列长度相同。)

答案 1 :(得分:1)

  

在java中,myArray.length会在2D数组中引用什么?

double的二维数组是一维数组或一维双数组。 myArray[0]是一个double数组double[] ),myArray[1]

所以myArray.length是数组的数量。

  

假设您希望在数组上运行几个for循环而不将行和列放在参数中以获取其值,是否有一种巧妙的方法可以执行此操作?

您的意思是您想在不使用myArray[2][3]3的情况下访问4?在Java

中无法做到这一点

答案 2 :(得分:0)

从Java 5开始,您可以使用不同的循环结构“for each”,避免使用数组索引;

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

    int[][] myArray = new int[][] { { 1, 2, 3 }, { 4, 5, 6 } };

    for ( int[] outer : myArray ) {
      for ( int inner : outer ) {
        System.out.println( inner );
      }
    }
  }
}

打印;

$ java Test
1
2
3
4
5
6