我有一个ArrayList的ArrayList实现为:
ArrayList<ArrayList<Integer>> sampleList = new ArrayList<ArrayList<Integer>>();
假设我的列表在一些操作之后包含以下元素:
[[1,2,3],[2,1,3,4],[3,1,2],[4,2]]
我想从这个集合中删除所有出现的特定元素,比如说4,即我想在删除4之后获得以下输出:
[[1,2,3],[2,1,3],[3,1,2]]
我知道我可以使用 for 循环,但是如果设置非常大,那将会非常繁琐且效率低下。 那么有更好的方法吗? (我是编程新手)
答案 0 :(得分:4)
根据您的要求,不会有更好的解决方案。您需要小心避免删除值4而不是位置4处的元素:
Set<String> toRemove = Collections.singleton(4);
for (List<Integer> list : sampleList) {
list.removeAll(toRemove);
}