首页 > 其他 > 详细

Linq 除重复值

时间:2020-04-18 17:43:54      阅读:47      评论:0      收藏:0      [点我收藏+]
public static IEnumerable<TSource> DistinctBy<TSource, TKey> (this IEnumerable<TSource> source, Func<TSource, TKey> keySelector)
{
    HashSet<TKey> seenKeys = new HashSet<TKey>();
    foreach (TSource element in source)
    {
        if (seenKeys.Add(keySelector(element)))
        {
            yield return element;
        }
    }
}

使用方法如下(针对ID,和Name进行Distinct)
var query = people.DistinctBy(p => new { p.Id, p.Name });

若仅仅针对ID进行distinct:
var query = people.DistinctBy(p => p.Id);

 

调用上面的那个方法是,方法所在的类要是静态类

 

 

linq的用法

————————————————
版权声明:本文为CSDN博主「崔钰玺」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/c1113072394/java/article/details/75330966

Linq 除重复值

原文:https://www.cnblogs.com/ZkbFighting/p/12726842.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!