List<Integer> copy = new ArrayList<>(list);
List<Integer> copy = new ArrayList<>(); copy.addAll(list);
List<T> copy = List.copyOf(list);
由于新的列表只是保存列表元素的引用,在一个列表中修改了某元素的内部属性,也会影响到另外一个列表。
这在实际编码中很容易出问题。
一般我们遵循如下的最佳实践: