今天在尝试使用lambda表示简化数组中元素移除的代码时遇到的问题。 原有数组使用new ArryList生成并进行匹配移除,后尝试使用Arrays.asList生成数组并改用lambda表达式中的removeif替换移除步骤过程中控制台报错![在这里插入图片描述](https://img-blog.csdnimg.cn/20210204144711422.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1BBTkdQQU5HUEFOR0pJQQ==,size_16,color_FFFFFF,t_70)
提示无法对数组进行操作。后百度查阅相关博客了解到
在使用Arrays.asList转成的List时同样要注意,Arrays.asList返回类型为Arrays类内部定义的私有类ArrayList,并且继承与AbstractList,翻阅AbstractList源码是可以发现,是不支持add和remove操作的,也就是说Arrays.asList返回的List是个固定大小的List。
博客链接 https://www.cnblogs.com/aspirant/p/13902608.html
作次记录,方便日后回忆。 在尝试代码简化和美观的同时也需要了解相关特性,不然依旧会出现相同问题。