假设我有以下代码:
List<string> numbers = new List<string> { "1", "2" };
List<string> numbers2 = new List<string> { "1", "2"};
if (numbers.Equals(numbers2))
{
}
就像你可以看到我有两个相同项目的列表。有没有办法通过使用一种方法检查这两个列表是否相等?
SOLUTION:
使用SequenceEqual()
由于
答案 0 :(得分:4)
首先使用Enumerable.SequenceEqual
,但Sort
列表。
答案 1 :(得分:2)
// if order does not matter
bool theSame = numbers.Except(numbers2).Count() == 0;
// if order is matter
var set = new HashSet<string>(numbers);
set.SymmetricExceptWith(numbers2);
bool theSame = set.Count == 0;