List<String> immutableList =Collections.unmodifiableList(newArrayList<>(Arrays.asList("A","B")));List<String> list =newArrayList<>();
list.add("A");
list.add("B");boolean result = immutableList.addAll(list);System.out.println(immutableList);System.out.println(result);
# 输出结果
Exception in thread "main" java.lang.UnsupportedOperationException
可变集合调用 addAll 方法,传入不可变集合,正常工作
List<String> list =newArrayList<>();
list.add("A");
list.add("B");List<String> immutableList =Collections.unmodifiableList(newArrayList<>(Arrays.asList("C","D")));boolean result = list.addAll(immutableList);System.out.println(list);System.out.println(result);
List<String> list =newArrayList<>();
list.add("A");
list.add("B");boolean result =Collections.addAll(list,"C","D");System.out.println(list);System.out.println(result);
# 输出结果
[A, B, C, D]
true
List 调用 addAll 方法,传入空数组
List<String> list =newArrayList<>();
list.add("A");
list.add("B");String[] array ={};boolean result =Collections.addAll(list, array);System.out.println(list);System.out.println(result);
# 输出结果
[A, B]
false
Set 调用 addAll 方法
Set<String> set =newHashSet<>();
set.add("A");
set.add("B");String[] array ={"C","D"};boolean result =Collections.addAll(set, array);System.out.println(set);System.out.println(result);
# 输出结果
[A, B, C, D]
true
Set 调用 addAll 方法,传入含有相同元素的数组
Set<String> set =newHashSet<>();
set.add("A");
set.add("B");String[] array ={"A","B"};boolean result =Collections.addAll(set, array);System.out.println(set);System.out.println(result);