Collections.emptyList(); 和 Arrays.asList();
生成的list都是不能直接添加数据的
第一个 生成的是Collections内部的EmptyList对象,
第二个 生成的是Arrays内部的ArrayList对象,
以上2个类内部都没有实现add方法,且都是继承AbstractList类,
所以最终调用的add方法只能是AbstractList类中的,
而AbstractList类中的add方法是直接报错。
如果需要创建支持常规list操作的空list,可以使用CollUtil.newArrayList
在Java中,Collections.emptyList()和Arrays.asList()创建的列表都是不可变的,无法直接添加元素,因为它们内部没有实现add方法。EmptyList是Collections的一个静态内部类,而Arrays.asList()返回的是一个固定大小的ArrayList。如果需要可变的空列表,应使用CollUtil.newArrayList()或者Collections空参数的newArrayList()方法。
670

被折叠的 条评论
为什么被折叠?



