2

特定の配列インデックスにアクセスしようとしたときにIndexOutOfRangeExceptionを防ぐ方法を探しています。

に値がある場合とない場合がある汎用コードがarray[index]あります。

したがって、その値を取得しようとする前に、次のチェックを試しました。

if(array[index] != null) {
    ... Do Stuff
}

また試した:

if(!String.IsNullOrEmpty(array[index])) {
    ... Do Stuff
}

それらはすべてIndexOutOfRangeExceptionをスローします

このチェックをどのように実行できますか?

4

2 に答える 2

11

非常に簡単:

if (index < array.Length)
于 2013-02-15T01:30:46.077 に答える
0

try...catchを使用してエラーを抑制することもできます。ブルート?

try
{
   var x = array[index];
}
catch(Exception ex)
{
}

そしてより良い

if(array.Length > index)
   var x = array[index];
于 2013-02-15T01:43:27.823 に答える