2

たとえば、私が持っていた場合int[5] array = {1, 2, 3, 4, 5}

int check = 5

if (check == any item in array)確認して何かをする簡単な方法はありますか?

4

5 に答える 5

12

ContainsLINQ メソッドを使用するだけです。using System.Linqメソッドにアクセスするには、追加する必要があります。

if(array.Contains(5))
{
    //TODO do stuff
}
于 2013-02-18T18:19:39.290 に答える
2

メソッドを使用できますEnumerable.Contains()。このメソッドtrueは、指定された値を持つ要素がソース シーケンスに含まれている場合に戻ります。それ以外の場合は、false.

既定の等値比較子を使用して、指定された要素がシーケンスに含まれているかどうかを判断します。

int[] array = {1, 2, 3, 4, 5};
if(array.Contains(5))
{
   Console.WriteLine("Array has an element called 5");
}

ここにデモがあります。

System.Linq名前空間を追加することを忘れないでください。

: メソッドの肯定的な側面Contains()として、一致する要素が見つかるとすぐに列挙が終了します。次のような要素を検索すると;

foreach(var i in array)
{
  if(i == 5)
  ///
}

配列内のすべての要素を列挙する必要があります。これがこの状況におけるこの方法の最大の利点だと思います。

于 2013-02-18T18:20:24.057 に答える
1
if (array.Contains(check))
{
    //code
}
于 2013-02-18T18:20:23.950 に答える
1

あなたは言うことができます:

array.Contains(check)
于 2013-02-18T18:21:17.593 に答える
0

このコードを試すことができます:

int[] array = { 1, 2, 3, 3, 5 };
int check = 5;

int r = Array.Find<int>(array, (arr => arr == check));
if (r != 0)
{
    // then do something.
}
于 2013-02-18T18:45:55.440 に答える