JAVA怎么获取list重复对象

   2025-02-13 2750
核心提示:要获取List中重复的对象,可以使用以下方法:使用循环遍历List,逐个比较对象是否重复,并将重复的对象添加到另一个List中。List

要获取List中重复的对象,可以使用以下方法:

使用循环遍历List,逐个比较对象是否重复,并将重复的对象添加到另一个List中。

List<T> list = ...; // 原始ListList<T> duplicates = new ArrayList<>(); // 存放重复对象的Listfor (int i = 0; i < list.size(); i++) {    T current = list.get(i);    for (int j = i + 1; j < list.size(); j++) {        T compare = list.get(j);        if (current.equals(compare)) {            if (!duplicates.contains(current)) {                duplicates.add(current);            }            break;        }    }}

使用Java 8的Stream API,结合Collectors.groupingBy方法进行分组,然后过滤出重复的对象。

List<T> list = ...; // 原始ListList<T> duplicates = list.stream()    .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()))    .entrySet()    .stream()    .filter(entry -> entry.getValue() > 1)    .map(Map.Entry::getKey)    .collect(Collectors.toList());

以上方法中,T是要比较的对象类型,可以根据实际需求进行替换。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言