Код, который вы разместили, сам по себе не является исключением. На самом деле, проверка границ вашего массива - одна вещь - вы слишком консервативны, если только вы действительно не собираетесь проверять последнее значение. Обычно это было бы
index < ageRangeIndividual.length
Вы говорите, что это происходит в конце концов - у вас есть какие-то другие потоки, изменяющие значение index
или ageRangeIndividual
?
Полагаю, вы собираетесь использовать index
в следующей строке - лично мне было бы понятнее, если бы это было заключено в методе:
// Rename to something more appropriate, perhaps
public static int findIndexOverMinimum(int[] values, int minimum)
{
for (int i = 0; i < values.length; i++)
{
if (values[i] > minimum)
{
return i;
}
}
return -1; // Or throw an exception, whichever is most appropriate
}
Мне действительно не нравятся циклы, которые не имеют тела и используют существующую переменную для индексации. Это все совершенно верно, но кажется, что это неправильно.