当前位置: 首页 > 面试题库 >

在Java中获取2D数组的数组长度

司马高韵
2023-03-14
问题内容

我需要获取行和列的2D数组的长度。我已经使用以下代码成功完成了此操作:

public class MyClass {

 public static void main(String args[])
    {
  int[][] test; 
  test = new int[5][10];

  int row = test.length;
  int col = test[0].length;

  System.out.println(row);
  System.out.println(col);
    }
}

这将按预期打印出5、10。

现在看一下这一行:

  int col = test[0].length;

注意,实际上我必须引用特定的行才能获取列的长度。对我来说,这似乎非常丑陋。此外,如果数组定义为:

test = new int[0][10];

然后,当尝试获取长度时,代码将失败。有其他方法(更智能)吗?


问题答案:

考虑

public static void main(String[] args) {

    int[][] foo = new int[][] {
        new int[] { 1, 2, 3 },
        new int[] { 1, 2, 3, 4},
    };

    System.out.println(foo.length); //2
    System.out.println(foo[0].length); //3
    System.out.println(foo[1].length); //4
}

每行的列长不同。如果要通过固定大小的2D数组支持某些数据,请在包装器类中为固定值提供吸气剂。



 类似资料:
  • 问题内容: 对于Java中的数组,我们可以使用获取数组的。同样,如何获得 2D 数组的行数和列数? 问题答案: 好吧,您可能想要获取行数和列数。也就是说,如果您这样定义数组:

  • 问题内容: 我知道2D数组是数组的数组。要获得一行,您可以执行以下操作: 由于每行的大小可以不同,因此我假设它不是内置的,无法从2D数组中获取列。它使我相信您必须执行以下操作: 这样对吗?这是唯一的方法吗? 问题答案: 如果您被限制使用二维数组,那么可以,这就是afaik。但是,可能会帮助您的建议(如果可能): 将数组包装在处理列提取的类中。 祝好运。

  • 问题内容: 如何找到二维数组中的行和列数? 例如, 应该显示为3行2列。 问题答案: 像这样: 假定所有子列表具有相同的长度(也就是说,它不是锯齿状的数组)。

  • 问题内容: 我有一个二维数组,称为int类型的矩阵,我想用一种方法将其复制到局部变量,以便我可以对其进行编辑 什么是复制阵列的最佳方法,我遇到了一些麻烦 例如 问题答案: 有两种复制数组的好方法是使用clone和。 这是在2D情况下如何使用克隆的方法: 对于System.arraycopy(),你可以使用: 我没有基准,但是我可以用我的2美分打赌,它们比你自己做的更快,更不容易出错。特别是,它是用

  • 问题内容: 如果不知道该如何获取数组的第二维?仅给出第一维度。 例如,在 如何获得的第二维的值,即3。 谢谢 问题答案: 哪 三个? 您已经创建了一个多维数组。是一个int数组的数组;您有两个长度为三的数组。 会给你第一个数组的长度。 另外值得注意的是,您不必像以前那样初始化多维数组,这意味着所有数组的长度不必相同(或根本不存在)。

  • 问题内容: 我声明了一个数组,如下所示: 然后,我为数组分配了以下值: 然后,我声明并初始化了一个整数变量: 这对于查找实际大小将很有用,但是有什么方法可以找到数组的逻辑大小吗? 问题答案: 它包含分配的大小。未分配的指标将包含默认值,即对。