A:
ArrayList<Employee> a = new ArrayList<>(100);
B:
a.ensureCapacity(100)
这两个都指定了100,那两者有什么关系,或者有什么区别吗?
我理解是,A意思是初始化的,即一开始先初始化a可以存储100个元素。B意思是指定a最终可能存储的元素数量吗?刚入门对这块不是很懂
A:
ArrayList<Employee> a = new ArrayList<>(100);
B:
a.ensureCapacity(100)
这两个都指定了100,那两者有什么关系,或者有什么区别吗?
我理解是,A意思是初始化的,即一开始先初始化a可以存储100个元素。B意思是指定a最终可能存储的元素数量吗?刚入门对这块不是很懂
8 回答6.5k 阅读
4 回答685 阅读✓ 已解决
2 回答3.4k 阅读
3 回答1.9k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答960 阅读✓ 已解决
都是扩容。只不过一个是在构造时就扩容了,一个是在后面调用时再扩容。
如果你对“扩容”这个概念陌生,请自行学习有关知识: