假设我有三个arrayList list1,list2和list3。这就是我的工作:
list1.addAll(list2).addAll(list3);
但我得到了一个"布尔值无法解除引用"错误。有谁知道为什么?非常感谢。
答案 0 :(得分:2)
查看方法文档
public boolean addAll(Collection<? extends E> c)
这意味着addAll()返回一个布尔值。
当您将两个addAll()调用连接在一起时,您会收到该错误。
单独执行addAll()可以很容易地避免这种情况。
list1.addAll(list2);
list1.addAll(list3);
答案 1 :(得分:1)
addAll()方法返回一个布尔值,指示目标集合是否因调用而更改。您将第二个addAll()发送到第一个addAll()的结果,这是一个布尔值。你想要:
list1.addAll(list2);
list1.addAll(list3);