C# List去重DistinctBy扩展
标签:hash 递归遍历 name 去重 stat his val new return
list 去重扩展:
public static IEnumerable DistinctBy(this IEnumerable source, Func keySelector)
{
HashSet keys = new HashSet();
foreach (TSource element in source)
if (keys.Add(keySelector(element)))
yield return element;
}
比较两个集合
public static bool CompareType(T oneT, T twoT)
{
bool result = true;//两个类型作比较时使用,如果有不一样的就false
Type typeOne = oneT.GetType();
Type typeTwo = twoT.GetType();
//如果两个T类型不一样 就不作比较
if (!typeOne.Equals(typeTwo)) { return false; }
PropertyInfo[] pisOne = typeOne.GetProperties(); //获取所有公共属性(Public)
PropertyInfo[] pisTwo = typeTwo.GetProperties();
//如果长度为0返回false
if (pisOne.Length
C# List去重DistinctBy扩展
标签:hash 递归遍历 name 去重 stat his val new return
原文地址:https://www.cnblogs.com/sunliyuan/p/14547296.html
评论