在使用java.utilsArrays.asList(T... a) 方法把一个数组转换成List时返回的List并不能进行 add ,remove等操作,否则会抛出UnsupportedOperationException。
其根本原因,为了不破环原来的数组,Arrays.asList() 返回的并不是一个真正的 java.util.ArrayList() 而是一个实现了java.util.AbstractList() 的List 这个List仅支持数据的查询索引等操作,不能支持数据的修改的操作。如果有需要对Arrays.asList()返回的List进行修改的操作,将原来的List可以先复制为新的ArrayList()UnsupportedOperationException
本文深入探讨了Java中使用java.util.Arrays.asList()方法将数组转换为List时,返回的List对象为何不能进行add, remove等操作的原因。解释了这背后的技术原理,并提供了将原始List复制为新的ArrayList()的方法来实现所需的操作。

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



