Arrays.asList()-迭代器删除报错小计

首先看下面代码有没有问题

public static void main(String[] args) {
        List 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方法,所以报错。

解决方法就无需说了

你可能感兴趣的:(Arrays.asList()-迭代器删除报错小计)