Java中List之间求交集 问题在Java中需要保留已有List中在另外一个List中的数据。解决思路使用list类自带的retainAll方法来求交集。retainAll 是 Java 集合框架Collection 接口中定义的一个方法用于仅保留当前集合中与另一个集合共有的元素即求交集并移除所有不在指定集合中的元素。javaimportjava.util.*;publicclassRetainAllExample{publicstaticvoidmain(String[]args){// 示例1ArrayList 与 HashSet 求交集ListStringlistnewArrayList(Arrays.asList(A,B,C,D));SetStringsetnewHashSet(Arrays.asList(B,D,E));booleanchangedlist.retainAll(set);System.out.println(是否改变changed);// trueSystem.out.println(list 交集结果list);// [B, D]// 示例2没有共同元素ListIntegernumbersnewArrayList(Arrays.asList(1,2,3));ListIntegerothersArrays.asList(4,5,6);booleanchanged2numbers.retainAll(others);System.out.println(是否改变changed2);// trueSystem.out.println(numbers 结果numbers);// []空集合// 示例3没有元素被移除ListStringcolorsnewArrayList(Arrays.asList(红,绿));ListStringkeepArrays.asList(红,绿,蓝);booleanchanged3colors.retainAll(keep);System.out.println(是否改变changed3);// falseSystem.out.println(colors 结果colors);// [红, 绿]未变}}