两个 list 求交集, 一种方式是手动遍历, 然后判断是否 contains, 然后添加到结果 list 中
这里介绍另外一个方法
直接调用 list1.retainAll(list2), 调用完成后, list1 中不在 list2 的元素都会被剔除, 此时 list1 就是交集
/** * retain * 保留 */
@Test
public void testRetain() {
List<String> list1 = new ArrayList<>();
list1.add("03");
list1.add("02");
list1.add("01");
List<String> list2 = new ArrayList<>();
list2.add("02");
list2.add("03");
// list1 只保留在 lists2 中的元素
list1.retainAll(list2);
System.out.println(list1);
}

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185226.html原文链接:https://javaforall.net