java中list去除重复对象
时间: 2023-09-08 14:14:58 浏览: 67
可以通过以下步骤去除 Java 中 List 中的重复对象:
1. 创建一个新的空 List 存储不重复的对象。
2. 遍历原始 List 中的每个对象,如果该对象不存在于新 List 中,则将其添加到新 List 中。
3. 返回新 List。
下面是一个示例代码:
```
List<Object> originalList = new ArrayList<>();
// 添加一些重复的对象到 originalList 中
List<Object> newList = new ArrayList<>();
for (Object obj : originalList) {
if (!newList.contains(obj)) {
newList.add(obj);
}
}
// newList 中包含了去除重复对象后的 List
```
需要注意的是,该方法仅适用于自定义的对象,对于 Java 中的基本数据类型,可以使用 Set 来去除重复元素。
相关问题
java 去除两个list中重复元素
可以使用Java 8中的Stream API来实现这个功能。具体步骤如下:
1. 将两个List合并成一个新的List
2. 使用stream()方法获取流对象
3. 使用distinct()方法去除重复元素
4. 使用collect()方法将流转换回List对象
示例代码如下:
```java
List<Integer> list1 = Arrays.asList(1, 2, 3);
List<Integer> list2 = Arrays.asList(2, 3, 4);
List<Integer> result = Stream.concat(list1.stream(), list2.stream())
.distinct()
.collect(Collectors.toList());
System.out.println(result);
```
输出结果为:[1, 2, 3, 4]
上述代码将两个List中的元素合并,然后去除重复元素,最后返回一个新的List对象。
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);
}
```