Ошибка "The local variable may not have been initialized"
Я совсем недавно начал учить java, все это может выглядеть как костыль, но я искренне не понимаю, почему выдает ошибку, помогите пожалуйста
Текст ошибки "The local variable a may not have been initialized"
// фрагмент кода, в котором объявляется переменные a,b
if (converter == 2) {
int a,b; // объявление переменных
String[] romanArray = new String[]{"0", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X"};
for (int i = 0; i < romanArray.length; i++) {
if (data[0].equals(romanArray[i])) {
a = i;
}
}
for (int i = 0; i < romanArray.length; i++) {
if (data[1].equals(romanArray[i])) {
b = i;
}
}
// здесь я вызываю калькулятор, и тут же ошибка, что a, b не объявлены
int arabian = calc(a, b, (regexMathSymbol[mathSymbolIndex]));
// хотя в похожем случае все прекрасно работает
if(converter != 1){
int a,b; // объявление переменных
a = Integer.parseInt(data[0]);
b = Integer.parseInt(data[1]);
if (a > 10 || b > 10) {
System.out.println("Выражение не корректно!\nОдно или оба значений больше 10");
return;
}
int arabian = calc(a, b, (regexMathSymbol[mathSymbolIndex]));
Источник: Stack Overflow на русском