问题:如何扩容 arraylist?答案: arraylist 元素数量超过原容量或调用 ensurecapacity() 由于当前容量的原因,扩容因子是当前容量 1.5 倍。自动扩容:倍。自动扩容: 添加元素时容量耗尽;手动扩容: 显式调用 ensurecapacity() 该方法将容量增加到所需的大小。
Java ArrayList 扩容
ArrayList 是 Java 集合框架中常用的动态数组可以随着元素的添加而自动扩展。当 ArrayList 在已满时,为了容纳新元素,有必要进行扩容操作。
如何扩容 ArrayList?
ArrayList 扩容发生在以下条件下:
立即学习“Java免费学习笔记(深入);
- 向 ArrayList 当添加元素时,其当前容量已耗尽。
- 调用 ensureCapacity() 方法,将 ArrayList 容量显式增加到指定尺寸。
扩容机制
默认情况下,ArrayList 扩大容量时,将容量增加到当前容量 1.5 倍。这个扩容因素是通过的。 DEFAULT_CAPACITY_ELEMENT_DATA 常量定义。
如果指定了自定义的初始容量,扩容因子将保持为 1.5。但是,可以调用 trimToSize() 释放未使用容量的方法,将扩容因子重置为 0。
手动扩容
可以使用 ensureCapacity() 手动扩容的方法 ArrayList。该方法接受参数,即所需的最小容量。如果 ArrayList 如果当前容量小于该容量,则将扩展到所需的大小。
若指定容量小于 ArrayList 当前容量不会扩大。
示例
// 创建的初始容量为 10 的 ArrayList ArrayList<integer> list = new ArrayList(10); // 扩容 ArrayList 为 20 list.ensureCapacity(20); // 扩容 ArrayList 为 30 list.ensureCapacity(30);</integer>
在上述示例中,ArrayList 初始容量为 10。调用 ensureCapacity() 该方法将容量增加到 20,然后增加到 30。
以上是java 如何扩展araylist的详细内容,请关注图灵教育的其他相关文章!