小编jai*_*jai的帖子

CopiesList.addAll方法抛出UnsupportedOperationException

List<String> hi = Collections.nCopies(10, "Hi");
List<String> are = Collections.nCopies(10, "Are");

hi.addAll(are);

hi.forEach(System.out::println);
Run Code Online (Sandbox Code Playgroud)

产量

Exception in thread "main" java.lang.UnsupportedOperationException
  at java.util.AbstractList.add(Unknown Source)
  at java.util.AbstractList.add(Unknown Source)
  at java.util.AbstractCollection.addAll(Unknown Source)
  at com.practice.java8.lambdaexp.Test.main(Test.java:14)
Run Code Online (Sandbox Code Playgroud)

我认为AbstractList.add()在JDK中没有实现.这就是为什么它不起作用.

但是,如果我使用CopiesList对象创建一个新的ArrayList对象,它可以工作,因为它将具有正确的add()实现.

我的问题是:为什么CopiesListaddAll 没有 正确的实现?

java

3
推荐指数
2
解决办法
362
查看次数

标签 统计

java ×1