所以,这篇文章是在继续之前的一篇文章:ArrayList.clear()和ArrayList.removeAll()有什么区别?...是否有某些情况下使用
此外,如果我知道要清除
removeAll()
比使用clear()
更好?
此外,如果我知道要清除
ArrayList
的所有内容,将其设置为新的ArrayList
是否可以?ArrayList myList = new ArrayList<String>();
myList.add("a");
myList.add("b");
// instead of using: myList.clear();
myList = new ArrayList<String>()
如果上述操作是可行的,那么为什么要使用clear()
而不是设置一个新的ArrayList
呢?创建一个新的空ArrayList
比O(n)更快。
完全删除
另一个列表中的所有元素,则应该使用removeAll
方法。clear
和removeAll
是两种完全不同的方法,具有完全不同的用例。你几乎永远不会想要赋一个新的ArrayList
而不是调用clear
方法——例如,你怎么知道你拥有的List
是一个ArrayList
呢? - Boris the Spider