Lists的坑点记录

  1. Arrays.asList,把数据转为List
  2. 操作Arrays.asList返回的List

Arrays.asList,把数据转为List

看如下代码结果:

运行:

原因分析:

查看源码可知,该函数的参数是一个泛型T可变参数,上面的int[]数组整体作为了参数。如果要实现想要的效果,需要如下处理,即把int数组转为Integer数组:
Arrays.stream(a).boxed().collect(Collectors.toList()).size()

操作Arrays.asList返回的List

查看源码可以知道,Arrays.asList返回的List不是java.util.List,而是其内部类ArrayList,其对增删接口未实现,因此对返回的List添加元素会报异常。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 linjk121@163.com.