-1

質問を言葉にするのは難しいですが、たとえば、次のようなものが欲しいとします。

int x = 5;
int z[] = {1,12,22,56};

if ((x==z[0]) || (x==z[1]) || (x==z[2]) || (x==z[3])) {
     [self fooOnYou:x]
}

これを行うためのよりクリーンでエレガントな方法はありますか?

4

4 に答える 4

1

名前空間Contains()で使用できます。System.Linq

int x = 5;
int[] z = new {1,12,22,56};

if (z.Contains(x)) 
{
     // do your stuff here...
}
于 2012-10-15T21:29:36.040 に答える
1

C# の答えは次のようになります。

using System.linq;
...
if (z.Any(i => i == x))
{
    // Do your stuff here.
}
于 2012-10-15T21:17:10.537 に答える
-1

整数値の配列に整数値が存在するかどうかを調べようとしていると思います。配列がソートされている場合は、二分探索アルゴリズムを使用してその値を見つける必要があります。そうでない場合 (そして並べ替えたくない場合) は、単純な for ループを使用して目的の値を見つけることができます。

int findValue(int value, int array[], int size) {

    for (int i = 0; i < size; ++i) {
        if (array[i] == value) {
            return i;
        }
    }

    return -1;
}
于 2012-10-15T21:15:48.897 に答える
-1

配列をループします。For(int i=0, i のようなもの

于 2012-10-15T21:18:28.777 に答える