Java 两个List去掉相同的值,生成一个新的List
时间: 2024-04-04 16:30:05 浏览: 30
如果你想要移除两个List中相同的值,生成一个新的List,你可以使用retainAll()方法来实现。下面是一个示例代码:
```java
import java.util.ArrayList;
import java.util.List;
public class ListIntersection {
public static List<Integer> removeIntersection(List<Integer> list1, List<Integer> list2) {
List<Integer> result = new ArrayList<>(list1);
result.retainAll(list2);
return result;
}
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
List<Integer> list2 = new ArrayList<>();
list2.add(2);
list2.add(3);
list2.add(4);
List<Integer> result = removeIntersection(list1, list2);
System.out.println(result);
}
}
```
在这个示例中,我们创建了两个ArrayList集合list1和list2,并将元素添加到各自的集合中。然后我们创建了一个新的ArrayList集合result,并将list1的所有元素添加到result中。接下来,我们使用retainAll()方法来保留result中与list2相同的元素,即移除了与list2相同的值。最后,我们输出result,即包含list1和list2中共同元素的新List。运行上面的代码,你会得到一个新的List,其中包含list1和list2中相同的元素。