您的位置:首页 > 编程语言 > C#

C# IEqualityComparer 使用方法 Linq Distinct使用方法

2018-02-05 14:18 405 查看
创建 IEqualityComparer的接口类必须实现Equals和GetHashCode方法

public class TipComparer : IEqualityComparer<TipDetails>
{
public bool Equals(TipDetails x, TipDetails y)
{
if (Object.ReferenceEquals(x, y)) return true;

if (Object.ReferenceEquals(x, null) || Object.ReferenceEquals(y, null))
return false;

return x.tiptitle == y.tiptitle;
}
public int GetHashCode(TipDetails obj)
{
if (obj == null) return 0; return obj.tiptitle.GetHashCode();
}
}


Linq调用时,只需创建这个TipComparer对象即可

result.tipdetails.Distinct(new TipComparer())
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: