Почему по i ошибки нету, а по j есть?
Почему в нижеприведенном коде есть ошибка
"The local variable j may not have been initialized"
указывающая на строку loc.column = j;
(3-я снизу)? Переменная j же проинициализирована. Почему нету такой же ошибки по строке loc.row = i;
?
public class Location {
public int row;
public int column;
public double maxValue;
public static Location locateLargest(double [][] arr) {
Location loc = new Location();
int aRow = 0;
int aColumn = 0;
double maxValue = arr[aRow][aColumn];
int i;
int j;
for(i = 0; i < arr.length; i++) {
for (j = 0; j < arr[i].length; j++) {
if(arr[i][j] > maxValue) {
maxValue = arr[i][j];
aRow = i;
aColumn = j;
}
}
}
loc.row = i;
loc.column = j;
loc.maxValue = maxValue;
return loc;
}
}
Источник: Stack Overflow на русском