int[] array = new int[10]; // Length is fixed when the array is created.
Run Code Online (Sandbox Code Playgroud)
创建数组时,将建立数组的长度.创建后,其长度是固定的.
为什么必须这样?
正如其他答案所指出的那样,固定大小是定义的一部分,你必须与原作者交谈才能找到真相.
但是作为一般观点,实现可变长度容器要复杂得多,并且有很多策略可以实现它(链表,内存重新分配...).
如果作者在20世纪90年代早期将数组定义为可变长度,则会产生一些不必要的后果:
a.length变得可变;java.util.Vector当天回来,现在是Java Collections,Guava等)充分处理.总而言之,人们普遍认为Java诞生的C语言系列中的数组是构建更高级别结构的简单工具 - 当时,固定大小限制并没有出乎意料.我们现在可以选择这种结构(LinkedList,ArrayList等)的实现,它们提供了一系列运行时行为,大多数开发人员都使用这些抽象.
| 归档时间: |
|
| 查看次数: |
2384 次 |
| 最近记录: |