首先看下面代码有没有问题
public static void main(String[] args) {
List<Integer> ids = Arrays.asList(1, 2, 3, 4, 5, null, 6);
ids.removeIf(Objects::nonNull);
}
报错:Exception in thread "main" java.lang.UnsupportedOperationException
原因:Arrays.asList() 创建出来的ArrayList是Arrays的内部类,并不是java.util.ArrayList,Arrays的内部类ArrayList没有实现迭代器的remove方法,所以报错。
解决方法就无需说了