假设我们有一个List<List<String>>
并且想让它完全不可修改。仅仅将它传递给 aCollection.unmodifiableList
是不够的,因为仍然可以修改内部列表。
我会采用以下方法:
List<List<String>> someList;
使其不可修改:
List<List<String>> tempList = new ArrayList<>();
for(List<String> strList : someList) {
tempList.add(Collections.unmodifiableList(strList));
}
List<List<String>> safeList = Collections.unmodifiableList(tempList);
这种方法好吗?