/// <summary> /// 比较器帮助类 /// 创建人:苏本东 /// 创建时间:2019-11-5 11:52:29 /// </summary> public class ComparerHelper<T> : IEqualityComparer<T> { private readonly Func<T, T, bool> _func; /// <summary> /// 构造方法 /// </summary> /// <param name="func"></param> public ComparerHelper(Func<T, T, bool> func) { this._func = func; } /// <summary> /// 比较是否相等 /// </summary> /// <param name="x"></param> /// <param name="y"></param> /// <returns></returns> public bool Equals(T x, T y) { return this._func(x, y); } /// <summary> /// 返回哈希代码 /// </summary> /// <param name="obj"></param> /// <returns></returns> public int GetHashCode(T obj) { //说明:此场景,不管obj的hashcode还是obj.id的hashcode都不会相同 //而如果hashcode不相同,就不会走到equals方法 //所以我们这里必须返回相同的hashcode,只有这样,equals方法才有机会被执行 return 1; } }
c#比较器辅助类
猜你喜欢
转载自www.cnblogs.com/subendong/p/11797570.html
今日推荐
周排行