Ber*_*ryl 23 c# linq ienumerable equality
我有两个具有完全相同的参考元素的枚举,并想知道为什么Equals不是真的.
作为一个附带问题,下面的代码比较每个元素的工作原理,但必须有一个更优雅的方式
var other = (ActivityService) obj;
if (!AllAccounts.Count().Equals(other.AllAccounts.Count())) return false;
for (int i = 0; i < AllAccounts.Count(); i++) {
if (!AllAccounts.ElementAt(i).Equals(other.AllAccounts.ElementAt(i))) {
return false;
}
}
return true;
Run Code Online (Sandbox Code Playgroud)
Ahm*_*eed 41
bool result = AllAccounts.SequenceEqual(other.AllAccounts);
Run Code Online (Sandbox Code Playgroud)
根据数据类型,您可能还需要使用接受定义自定义比较方法的重载IEqualityComparer
方法.
归档时间: |
|
查看次数: |
10061 次 |
最近记录: |