日期:2014-05-20  浏览次数:20647 次

数组内存空间分配与增长问题 请大侠赐教 谢谢了


定义一个String[] st = new String[]{}数组 其内存空间是怎么分配的 存入元素的时候内存空间是怎么增长的呢?

------解决方案--------------------
数组一开始你必须定义长度。 一旦定义以后,长度不可变。定义的时候,他会开辟一块连续的内存区域。
所以你这个数组不能再存入任何元素了。。

而关于可变长数组List,你可以看下源码。

当装满的时候,他会定义一个新数组,长度为原来数组的2倍+1,然后再把数据copy过来