gpt4 book ai didi

Java double[][] 问题

转载 作者:行者123 更新时间:2023-12-01 07:14:59 24 4
gpt4 key购买 nike

我正在对我的代码执行以下操作:

double[][] temp=new double[0][2];

程序将运行,没有运行时异常。当我像这样 temp.length 那样获取 temp 的长度时,它返回 0;当我尝试像这样 temp[0].length 那样访问内部数组的长度时,它返回总是抛出ArrayIndexOutOfBoundsException。 (这只是一个测试。)

现在我想知道,Java是否创建了一个长度为0的数组,同时在一个长度为0的数组中创建了一个长度为2的内部数组?

  1. 这种声明对内存管理有影响吗?
  2. 它会使编码和运行代码变得复杂吗?
  3. Java 真的允许这种声明吗?
  4. 他们在什么意义上允许这种声明,或者他们只是忽略了这种情况?
  5. 如果他们允许这种声明,它是否还有一些特殊用途?

我只是在探索做这种声明的可能性,并一直在质疑自己这是否真的被允许。

非常感谢您的意见。

最佳答案

相当于

double[][] temp = new double[0][]; // a zero length array of double[]

for(int d=0; d<0; d++)
temp[d] = new double[2]; // whose each element is a new double[2]

当然,循环不会执行,因此“内部数组”不会浪费

关于Java double[][] 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5132127/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com