我从相同的pojo创建了两个列表对象,并对其中之一进行了排序。当我尝试更改一个列表时,其他列表也得到了更新。

List<FilterPojo.Data> filterList = new ArrayList<>();
List<FilterPojo.Data> subFilterList = new ArrayList<>();


如果更改filterList中的值,subFilterList中也会发生相同的更改

最佳答案

使用您提供的有限信息,您似乎正在将subFilterList创建/填充为subListfilterList。当您这样做时,在任一列表中所做的所有更改都将反映在其他列表中。

发生这种情况是因为List.subList()返回列表的视图,因此对原始列表的修改将反映在子列表中。正如其他人所建议的那样,使用subList代替addAll来填充subFilterList

09-11 04:41
查看更多