我正在对我的代码执行以下操作:
double[][] temp=new double[0][2];
Run Code Online (Sandbox Code Playgroud)
程序将在没有运行时异常的情况下运行.当我得到像这样的临时长度temp.length它返回0并且当我尝试访问内部数组的长度时,temp[0].length它总是抛出一个ArrayIndexOutOfBoundsException.(那只是一个考验.)
现在我想知道,Java确实创建了一个长度为0的数组,同时在一个长度为0的数组中创建了一个长度为2的内部数组?
我只是在探索做这种声明的可能性,并且一直质疑自己是否真的允许这样做.
非常感谢您的意见.
它相当于
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]
Run Code Online (Sandbox Code Playgroud)
当然循环没有被执行,所以没有"内部阵列"的浪费
| 归档时间: |
|
| 查看次数: |
343 次 |
| 最近记录: |