Сравнение значений 2 списков C# [дубликат]

этот вопрос уже есть ответ здесь:

Я хочу сравнить значения двух списков для программы я делаю. Я хочу, чтобы он сравнил 1-е значение списка 1 с первым значением списка 2, а затем второе значение списка 1 с второе значение списка 2 и так далее.

Как бы я сделал это на C#?

1 ответов


для этого есть специальный метод, называемый SequenceEqual:

IList<int> myList1 = new List<int>(...);
IList<int> myList2 = new List<int>(...);
if (myList1.SequenceEqual(list2)) {
    ...
}

вы можете сделать заказ сравнение последовательностей с помощью Zip метод. Например, чтобы увидеть, есть ли какая-либо пара не в пределах разницы трех, вы можете сделать это:

IList<int> myList1 = new List<int>(...);
IList<int> myList2 = new List<int>(...);
if (myList1.Zip(list2, (a, b) => Math.Abs(a - b)).Any(diff => diff > 3)) {
    ...
}