Привет, я написал этот метод, чтобы вернуть индексную позицию массива, но я все равно получаю 0 в качестве возвращаемого значения. Может ли кто-нибудь сказать мне, почему?Найдите положение индекса массива?
public static int indexPosition (int [] intArray, int x)
{
int index = 0;
for (int i = 0; i < intArray.length; i++)
{
if (intArray[i] == x)
{
index = i;
}
}
return index;
}
это часть основного метода с использованием этого метода
for (int i = 0; i < names.length; i++)
{
System.out.println(names[i] + ": " + times[i]);
System.out.println(indexPosition(times, i));
}
Каковы значения 'intArray' и' x', когда вы вызываете этот метод? –
Два условия. Нет совпадения, или совпадение произошло в самом первом элементе. Вы можете сломать внешний вид, если совпадение найдено. – makdu
Две возможности: либо позиция 0 в массиве была совпадением, либо совпадением не было ('index' инициализирован равным 0, поэтому вы получите 0 обратно, если нет совпадения) , Возможно, вы должны инициализировать 'index' до -1? Тогда вы узнаете, что совпадения не было, потому что в результате результат не может привести к -1. –