美文网首页
扩展linq 去重复的方法

扩展linq 去重复的方法

作者: 码嘟嘟 | 来源:发表于2019-08-14 18:52 被阅读0次

    /// <summary>

            /// 扩展linq  去重复的方法

            /// </summary>

            /// <typeparam name="TSource"></typeparam>

            /// <typeparam name="TKey"></typeparam>

            /// <param name="source"></param>

            /// <param name="keySelector"></param>

            /// <returns></returns>

            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;

                    }

                }

    相关文章

      网友评论

          本文标题:扩展linq 去重复的方法

          本文链接:https://www.haomeiwen.com/subject/izynkctx.html