java获取集合中重复的数据
时间: 2024-03-03 22:46:55 浏览: 24
可以通过以下步骤来获取集合中重复的数据:
1. 创建一个 HashSet 对象,用于存储不重复的元素。
2. 创建一个 ArrayList 对象,用于存储重复的元素。
3. 遍历集合中的每个元素,如果 HashSet 中已经存在该元素,则将该元素添加到 ArrayList 中;否则将该元素添加到 HashSet 中。
4. 返回 ArrayList 中的元素即可。
下面是示例代码:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(1, 2, 3, 2, 4, 3, 5, 6, 5);
List<Integer> duplicates = findDuplicates(list);
System.out.println("Duplicates: " + duplicates);
}
public static <T> List<T> findDuplicates(Collection<T> collection) {
Set<T> set = new HashSet<>();
List<T> duplicates = new ArrayList<>();
for (T item : collection) {
if (set.contains(item)) {
duplicates.add(item);
} else {
set.add(item);
}
}
return duplicates;
}
}
```
输出结果为:`Duplicates: [2, 3, 5]`。