java list集合合并重复数据
时间: 2023-10-14 17:28:32 浏览: 69
要合并Java List集合中的重复数据,可以遍历List中的元素,将每个元素添加到一个新的List中,同时检查新的List中是否已经存在该元素。如果存在,则不添加该元素。代码示例如下:
```java
List<String> list1 = new ArrayList<String>(Arrays.asList("a", "b", "c", "d", "e"));
List<String> list2 = new ArrayList<String>(Arrays.asList("c", "d", "e", "f", "g"));
List<String> mergedList = new ArrayList<String>();
mergedList.addAll(list1);
for (String element : list2) {
if (!mergedList.contains(element)) {
mergedList.add(element);
}
}
System.out.println(mergedList);
```
输出结果为:`[a, b, c, d, e, f, g]`。其中,List1和List2是要合并的两个List集合,mergedList是合并后的结果。在遍历list2时,如果mergedList中已经存在该元素,则不需要添加到mergedList中。最终输出合并后的List集合。
相关问题
java list集合合并并去重
在Java中,要将两个List集合合并并去重,可以使用以下步骤:
1. 创建一个新的ArrayList对象,用于存储合并后的结果。
2. 将第一个List集合的所有元素添加到新的ArrayList中。
3. 使用循环遍历第二个List集合的每个元素,判断是否已经存在于新的ArrayList中,如果不存在则添加到新的ArrayList中。
4. 最后,新的ArrayList中就包含了合并并去重后的结果。
下面是一个示例代码:
```java
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class Main {
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(3);
list2.add(4);
list2.add(5);
List<Integer> mergedList = new ArrayList<>(list1); // 复制list1到新的ArrayList
for (Integer num : list2) {
if (!mergedList.contains(num)) {
mergedList.add(num);
}
}
System.out.println(mergedList);
}
}
```
输出结果将会是 `[1, 2, 3, 4, 5]`。请注意,这种方法会保持原始顺序,并且不会修改原始列表。
java 将2个list集合合并
可以使用addAll方法将一个List集合中的所有元素添加到另一个List集合中,从而实现合并两个List集合的目的。以下是示例代码:
```java
List<String> list1 = new ArrayList<>();
list1.add("a");
list1.add("b");
List<String> list2 = new ArrayList<>();
list2.add("c");
list2.add("d");
list1.addAll(list2); // 将list2中的所有元素添加到list1中
System.out.println(list1); // 输出 [a, b, c, d]
```
在上面的例子中,我们首先创建了两个List集合list1和list2,然后使用addAll方法将list2中的所有元素添加到list1中,最后输出合并后的list1集合的内容。