安卓 java替换列表内容或替换引用值本身
我有一个用于Android中ListView适配器的列表
大多数情况下,列表用于读取,但有时需要替换所有列表内容
下面哪种类型的代码(replaceListA、replaceListB)是首选代码?还是用另一种方法来取代名单
提前谢谢你
private ArrayList<Model> list = new ArrayList<Model>();
public synchronized void replaceListA(List newList) {
list.clear();
list.addAll(newList);
}
public synchronized void replaceListB(List newList) {
list = newList;
}
# 1 楼答案
第二种是首选。它在O(1)时间内运行,另一个在O(n)时间内运行。之后一定要给notifyDataSetChanged打电话
# 2 楼答案
见this answer