コレクション

[C#] コレクションや配列の中身が同じかどうか判定する(.SequenceEqual)

コレクションや配列の中身が同じかどうか判定するには
.SequenceEqual を使用します。

サンプル

例1)List型の場合

using System.Collections.Generic;
using System.Linq;

// intのListを生成
List<int> list1 = new List<int>(){1, 2, 3};
List<int> list2 = new List<int>(){1, 2, 3};
List<int> list3 = new List<int>(){1, 2};

// list1とlist2の内容が同じかどうか判定する
bool result = list1.SequenceEqual(list2);
→ true

// list1とlist3の内容が同じかどうか判定する
bool result = list1.SequenceEqual(list3);
→ false

例2)配列の場合

using System.Linq;

// intの配列を生成
int[] arr1 = new int[] { 1, 2, 3 };
int[] arr2 = new int[] { 1, 2, 3 };
int[] arr3 = new int[] { 1, 2 };

// arr1 とarr2 の内容が同じかどうか判定する
bool result = arr1.SequenceEqual(arr2);
→ true

// arr1 とarr3 の内容が同じかどうか判定する
bool result = arr1.SequenceEqual(arr3);
→ false

備考

  • LINQを使用するには、「using System.Linq;」の宣言が必要です。
  • Listと配列を比較するなど、異なるオブジェクトでも比較できます。

-コレクション
-,