清除ArrayList的两个选项中哪个更好,更快,为什么?
list.clear()
要么
list = new ArrayList<Integer>();
碰巧,我不得不随机地从ArrayList中清除所有条目,而我无法知道将来会有多少个新条目,可能是0或1000。哪种方法更快,更好,为什么?
没有基准就很难知道,但是如果ArrayList中有很多项目,并且平均大小较小,则创建新的ArrayList可能会更快。
http://www.docjar.com/html/api/java/util/ArrayList.java.html
public void clear() {
modCount++;
// Let gc do its work
for (int i = 0; i < size; i++)
elementData[i] = null;
size = 0;
}