`
zysnba
  • 浏览: 186012 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

List集合中的对象按照某个字段去重实现

 
阅读更多
package com.bean.user;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;

import com.bean.Order;

/**
* List集合中的对象按照某个字段去重实现
*

*
*/
public class DuplicateOrderTest {
    public static void main(String[] args) {
        List<Order> orderList = new ArrayList<Order>();
        Order order = new Order();
        order.setOrderNo("123");
        order.setUserId("aa123");
        orderList.add(order);

       order = new Order();
        order.setOrderNo("123");
        order.setUserId("bb123");
        orderList.add(order);

         order = new Order();
        order.setOrderNo("33");
        order.setUserId("aa123");
        orderList.add(order);
       
        List<Order> dataList = removeDuplicateOrder(orderList);
        for(Order data : dataList){
            System.out.println(data.getOrderNo() + ":" + data.getUserId());
        }
    }

    /**
     * 去重
     * @param orderList
     * @return
     */
    private static List<Order> removeDuplicateOrder(List<Order> orderList) {
        Set<Order> set = new TreeSet<Order>(new Comparator<Order>() {
            public int compare(Order a, Order b) {
                // 字符串则按照asicc码升序排列
                return a.getUserId().compareTo(b.getUserId());
            }
        });
       
        set.addAll(orderList);
        return new ArrayList<Order>(set);
    }
}




执行结果:

123:aa123
33:aa123

分享到:
评论

相关推荐

    如何实现java8 list按照元素的某个字段去重

    在Java编程中,有时我们需要处理列表(List)数据结构,并且在处理过程中,可能需要根据元素的特定字段去重。Java 8引入了Stream API,它提供了强大的数据处理能力,包括去重操作。本篇文章将详细讲解如何使用Java 8...

    List集合多个复杂字段判断去重的案例

    List集合多个复杂字段判断去重的案例 在 Java 编程中,List 集合是我们常用的数据结构之一。当我们需要对 List 集合进行去重操作时,通常的做法是将其转换为 Set 集合,因为 Set 集合不允许重复元素。但是,事情并...

    Java中List集合对象去重及按属性去重的8种方法

    【Java中List集合对象去重及按属性去重的8种方法】 在Java编程中,当我们处理包含重复元素的List时,有时需要去除其中的重复项。以下文章将详细介绍8种针对List集合对象去重的方法,包括基于对象整体以及按特定属性...

    List对象去重和按照某个字段排序的实现方法

    List对象去重和按照某个字段排序的实现方法 在Java开发中,List对象的去重和排序是非常常见的操作。今天,我们将探讨如何对List对象进行去重和按照某个字段排序的实现方法。 首先,让我们来看一下List对象的去重。...

    Java中List根据map的某个key去重的代码

    Java中List根据map的某个key去重是指在Java编程中,如何根据List中的Map对象的某个key值去掉重复的Map对象。今天我们将分享一篇关于Java中List根据map的某个key去重的代码,这篇代码分享了如何使用Java语言来实现...

    list去掉重复对象

    一个list里面有多个对象,对象有几个字段,要求在对象里面不要有重复的数据的实现。

    Java中对List去重 Stream去重的解决方法

    Java中List去重和Stream去重的解决...List去重是Java中的一种常见操作,我们可以使用HashSet、Stream或手动去重等方法来实现List去重,但无论哪种方法,我们都需要正确地重写hashCode和equals方法,以便正确地去重。

    java jsonarray 踢重 去重操作

    在提供的代码片段中,使用了`HashSet`来实现`JSONArray`的去重操作。下面详细介绍这一过程: ```java import org.json.JSONArray; import java.util.HashSet; import java.util.List; public class ...

    List&lt;map&gt;多字段组合排序

    List,List, Object&gt;&gt;,多字段组合排序。提供一个简易的思路,如果需要进行参考。

    Java将2个List集合合并到一个List里面并排序工具类

    Java将2个List集合合并到一个List里面并排序工具类 1、Java编程资源,定义了一个名为`ListMerger`的工具类,主要包含一个名为`mergeAndSortLists`的静态方法。此方法用于将两个已经根据时间顺序排列的List合并成一...

    利用Distinct()内置方法对List集合的去重问题详解

    "利用Distinct()内置方法对List集合的去重问题详解" 知识点1:List&lt;T&gt; 集合的去重问题 List&lt;T&gt; 集合是泛型链表,实现了IEnumerable接口,规定了Distinct方法。但是,Distinct方法不能直接应用于引用类型的集合去重...

    java删除重复字段

    3. **获取键集合**:从`HashMap`中获取键集合,并将其转换为`List`。 ```java List&lt;Integer&gt; list = new ArrayList(); Iterator&lt;Integer&gt; it = map.keySet().iterator(); while (it.hasNext()) { Integer ob = ...

    Android List删除重复数据

    在本文中,我们将介绍四种不同的方法来删除 Android List 中的重复数据。 方法一:通过循环进行删除 该方法使用双重循环来删除重复数据。外层循环遍历列表,内层循环从后向前遍历列表,比较每个元素是否相等,如果...

    【IT十八掌徐培成】Java基础第24天-05.内连接-外链接-集合-去重查询.zip

    此外,当我们需要基于特定字段去重时,可以自定义比较器(Comparator)来实现更复杂的去重逻辑。 总结,Java中的内连接和外连接帮助我们在数据库中高效地处理相关数据,集合提供了一种灵活的数据组织方式,而去重...

    hibernate criteria的使用方法

    Hibernate 是一款非常流行的 Java 持久层框架,它简化了对象关系映射(ORM)过程中的许多复杂性。在 Hibernate 中,Criteria API 提供了一种类型安全的方式来构建动态查询,与 HQL 相比,它更加面向对象,并且支持更...

    java8如何通过Lambda处理List集合

    Java 8 中使用 Lambda 处理 ...在上面的例子中,我们使用 `stream()` 方法将 List 集合转换为 Stream,接着使用 `filter()` 方法过滤出 age 大于 25 的 User 对象,最后使用 `collect()` 方法将 Stream 转换为 List。

    Java中ArrayList去除重复元素(包括字符串和自定义对象)

    在Java中,ArrayList是一种常用的集合类,但是在实际应用中,我们经常会遇到重复元素的问题,例如字符串或自定义对象的重复元素。在本文中,我们将介绍如何从ArrayList中去除重复元素,包括字符串和自定义对象。 ...

    Lambada List集合操作实例(最全最容易理解)

    主要包含常用的排序、取某个属性list、按照属性分组、过滤集合、list转map重复key覆盖、获取最大最小值及平均数、获取基本类型的和、获取Bigdecimal求和、对基本集合去重、对集合中相同属性进行计数、集合排序、倒叙...

    LINQ排除重复的list 免费下载

    LINQ是一种.NET Framework提供的一组用于查询对象的技术集合,它能够使开发者用类似SQL的语言来查询内存中的数据。LINQ支持多种类型的数据源,如数组、列表等,极大地简化了数据操作的过程。 ##### 2.2 Distinct()...

    JAVA JDK8 List分组获取第一个元素的方法

    我们使用Collectors.groupingBy方法对List对象进行分组,按照Coupon的couponId字段进行分组。然后,我们使用Collectors.collectingAndThen方法对组内的元素进行处理,获取每个组的第一个元素。 在输出结果中,我们...

Global site tag (gtag.js) - Google Analytics