ArrayList 扩容机制和使用建议
ArrayList 底层是数组,适合按下标快速访问,也适合尾部追加。它不适合频繁在中间插入或删除,因为这会触发元素搬移。
基本使用
List<String> names = new ArrayList<>(); |
扩容机制
ArrayList 容量不够时会扩容。扩容不是免费操作,需要创建新数组并复制旧数据。如果能预估大小,建议指定初始容量:
List<Long> ids = new ArrayList<>(1000); |
删除元素的正确方式
遍历时删除元素,不要直接在 for-each 里 remove:
Iterator<String> iterator = names.iterator(); |