0

array2のサブセットであるかどうかを確認するにはどうすればarray1よいですか?言い換えれば、のすべての要素がarray2に存在するかどうかを確認したいarray1ですか?Lambdaまたはで解決策が必要Linqです。

int[] array1 = {6, 3, 1, 4, 5, 2};
int[] array2 = {1, 2, 3};
4

3 に答える 3

5

私があなたの質問を理解した場合:

using System.Linq;

if (!array2.Except(array1).Any())
{
    ...validated!
}
于 2012-09-12T13:43:26.417 に答える
1

もう1つの簡単な方法として、次のすべての項目があるかどうかを確認LINQできます。Allarray2array1

if (array2.All(array1.Contains))
{
    // array2 is subset of array1
}
于 2012-09-12T14:53:31.070 に答える
1

で試してみてください

 int[] array1 = { 6, 3, 1, 4, 5, 2 };
 int[] array2 = { 1, 2, 3 };

 bool isSubset = array2.Count(o => array1.Contains(o)).Equals(array2.Count()) ? true : false;
于 2012-09-12T16:09:10.237 に答える