java数组的动态扩容
时间: 2023-12-25 18:54:24 浏览: 105
java数组扩容
在Java中,可以使用ArrayList来实现动态扩容的数组。
ArrayList是基于数组实现的,当元素个数超过数组长度时,会自动扩容。默认情况下,每次扩容会将原数组的大小增加一倍,因此,ArrayList的扩容操作的时间复杂度为O(n)。
如果我们想要手动控制ArrayList的扩容行为,可以在创建ArrayList时指定初始容量,例如:
```java
ArrayList<Integer> list = new ArrayList<>(10); // 初始化容量为10
```
此时,如果想要在list中添加元素,当list中元素的数量超过10时,list会自动扩容。
另外,如果我们想要在list中添加大量元素,为了避免频繁扩容,可以在创建ArrayList时指定一个较大的初始容量。但是也要注意不要过度估计容量,否则会浪费内存。
阅读全文