这段代码中是否有一些我在 java 中看不到的隐藏含义?怎么可能有用呢?
int[] a = new int[1];
不仅仅是
int a;
因为从我的角度来看这是一样的?
int a
定义一个原始 int。
int[] a = new int[1];
定义一个有空间容纳 1 个 int 的数组。
它们是两种截然不同的东西。基元没有方法/属性,但数组有属性(长度)和方法(特别是它的克隆方法,以及对象的所有方法)。
数组有点奇怪。它们定义在JLS http://java.sun.com/docs/books/jls/third_edition/html/names.html#6.4.5.
实际上,当您需要与采用数组并对结果进行操作的 API 进行交互时,这样做是有意义的。传递对具有 0、1 或 n 个属性的数组的引用是完全有效的。定义具有 1 个元素的数组可能还有其他正当理由。
我想不出任何您想要定义一个包含一个元素的数组的用例,只是为了绕过该数组并获取该元素。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)