javalist集合中对象去重
时间: 2023-11-22 15:55:20 浏览: 60
可以使用HashSet来对Java集合中的对象进行去重,HashSet会自动判断对象是否相同,如果两个对象相同,则只会保留其中一个对象。代码示例如下:
```
List<Object> list = new ArrayList<>();
HashSet<Object> set = new HashSet<>(list);
list.clear();
list.addAll(set);
```
其中,list为需要去重的集合,set为使用HashSet进行去重后得到的集合,最后将去重后的集合再放回原始集合中即可。
相关问题
java中list集合对象去重
以下是两种Java中List集合对象去重的方法:
1. 使用双重循环遍历并删除重复元素:
```java
public static List removeDuplicate(List list) {
for (int i = 0; i < list.size() - 1; i++) {
for (int j = list.size() - 1; j > i; j--) {
if (list.get(j).equals(list.get(i))) {
list.remove(j);
}
}
}
return list;
}
```
2. 使用HashSet去重并保持顺序:
```java
public static void removeDuplicateWithOrder(List list) {
Set set = new HashSet();
List newList = new ArrayList();
for (Iterator iter = list.iterator(); iter.hasNext();) {
Object element = iter.next();
if (set.add(element))
newList.add(element);
}
list.clear();
list.addAll(newList);
System.out.println("remove duplicate " + 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]`。请注意,这种方法会保持原始顺序,并且不会修改原始列表。
阅读全文