List集合去重的一种方法
前一段时间们需要对一个List<Model>集合去重,情况是该集合中会出现多个Name属性值相同的,但是其他属性值不同的数据。
在这种情况下,需求要只保留其中一个就好。
我觉得遍历和HashSet都不是我想要的,便采用了一下方式
定义Compare类,继承IEqualityComparer接口
public class ComparerHelper : IEqualityComparer<Model>{public bool Equals(Model x, Model y){return x.Name== y.Name;}public int GetHashCode(Model obj){return obj.Title.GetHashCode();}}
调用如下:
modelList = modelList.Distinct(new ComparerHelper()).ToList();
List集合去重的一种方法相关推荐
- python list去重时间复杂度_List集合去重的一种方法 z
需要对一个List集合去重,情况是该集合中会出现多个Name属性值相同的,但是其他属性值不同的数据. 在这种情况下,需求要只保留其中一个就好. 我觉得遍历和HashSet都不是我想要的,便采用了一下方 ...
- java中给对象的List集合去重的几种方法(Lambda)
java中给对象的List集合去重的几种方法 前言 一.lambda表达式的去重方式 二.Stream API中的collect去重方法 三.Stream API 中的distinct方法去重 前言 ...
- List 集合去重的 3 种方法
问题由来 在实际开发的时候,我们经常会碰到这么一个困难:一个集合容器里面有很多重复的对象,里面的对象没有主键,但是根据业务的需求,实际上我们需要根据条件筛选出没有重复的对象. 比较暴力的方法,就是根据 ...
- java hashmap 去重_java数组去重的两种方法
我们对于数组元素的使用,有时候在创建数组的初期,并没有考虑过元素的重复问题.当我们想要不重复元素的数组时,就要再进行一步去重的工作.数组的去重有两种方法可以实现,一个是循环比较,另一个是hashSet ...
- Python列表去重的几种方法和实例
Python列表去重的几种方法和实例 在 Python 中,列表去重有多种方法,下面分别介绍这些方法的实现. 方法一:使用 set() 函数 set() 函数可以将列表转换成集合,集合中不允许有重复的 ...
- 【知识学习】C# List<T>取并集并去重的两种方法时间消耗比较
C# List<T>取并集并去重的两种方法时间消耗比较 文章目录 C# List\取并集并去重的两种方法时间消耗比较 前言 一.两种方法 二.时间计算方法 1.Stopwatch 三.数据 ...
- List集合去重的几种方式
List集合去重的几种方式 1. 通过set集合的特性,集合元素的唯一性 public static List heavyListMethod01(List list){ Set se ...
- java数组去重方法是,java数组去重的两种方法
我们对于数组元素的使用,有时候在创建数组的初期,并没有考虑过元素的重复问题.当我们想要不重复元素的数组时,就要再进行一步去重的工作.数组的去重有两种方法可以实现,一个是循环比较,另一个是hashSet ...
- python列表去重的两种方法
python列表去重的两种方法 1. 使用循环进行遍历,将重复的元素去掉. def test1():lst = [1,2,5,6,3,5,7,3]tmp = []for it in lst:if it ...
最新文章
- AI实验室•西安站 教你用人脸识别打造爆款应用
- 《javascript高级程序设计》笔记:内存与执行环境
- 基于区块链的健康链系统设计与实现(2)区块链平台Web服务器
- spring boot多模块项目一个模块引用另一个模块的实体类报错空指针
- 安卓学习第37课——DatePickerDialog、TimePickerDialog
- json_encode ajaxReturn getJSON
- VirtualBox复制虚拟机
- SDN时代更需要有保障的网络
- php和其他语言的区别,为什么说php是弱类型好学,跟其他语言的区别
- ajax里面success函数return上层接收不到
- java实现打开新窗口_[Java教程]javascript 打开新窗口(window.open)
- Linux 命令tar
- kali-网站克隆工具-httrack
- 51单片机矩阵键盘控制数码管
- QT5使用PCAN读取CAN数据
- C# Activator实例化类的一般步骤
- 怎样用python制表_用Python绘图和制表(附泰坦尼克号案例)
- Linux命令行下使用飞信
- During sturtup program exited with code 0xc0000139的解决办法!
- Vlan和pvlan全面解析
热门文章
- RR隔离级别下通过next-key locks 避免幻影读
- NHibernate初学二之简单执行SQL及HQL、Linq
- STL区间成员函数及区间算法总结
- EMC_AutoStart5.4安装配置之五
- JDBC常用连接写法(包括MySQL、Oracle、Sybase、SQLServer、DB2)
- PowerShell入门
- mysql正在加载_本地坏境或者服务器环境下phpmyadmin出现始终正在加载问题的解决方法...
- 5G NPN 行业专网 — 媒体行业 5G 专网部署方案
- 架构师之路 — API 经济 — 权限管理系统(分权分域设计)
- 开关电源输出整流二极管