【发布时间】:2018-04-21 00:19:29
【问题描述】:
假设我们有:
public class Test {
private List<String> mWorkList;
private List<String> mOriginalList;
public Test(List<String> list) {
mWorkList = list;
mOriginalList = list;
}
public void updateData(List<String> newList) {
mWorkList.clear();
mWorkList.addAll(newList);
}
}
我只想更改mWorkList,但当我调用updateData(List<String>) 时,mOriginalList 也会更改。
那么我应该怎么做才能保持 mOriginalList 最初在构造函数中分配?
【问题讨论】:
-
两者都指向
List<String> list的同一个实例...你需要创建一个List的新实例,看看如何将here列表复制到一个新实例中
标签: java