如何测试两个集合的明智相等

时间:2010-06-18 08:51:41

标签: .net collections equality

我如何测试两个集合是否相等,因为根据.Equals(),每对元素相等?

我发现自己写了一个小功能(如下所示),它似乎超越了顶部。我想必须有一个更简单的方法来做到这一点。

bool ListsEqual<T>(IList<T> lhs, IList<T> rhs) where T : IEquatable<T> {
    if (lhs == rhs) {
        return true;
    }

    if (lhs.Count == rhs.Count) {
        for (int i = 0; i < lhs.Count; i++) {
            if (lhs[i].Equals(rhs[i]) == false) {
                return false;
            }
        }
        return true;
    } else {
        return false;
    }
}

1 个答案:

答案 0 :(得分:1)

我找到了Enumerable.SequenceEqual