Исключение числового формата при преобразовании строки
Следующий код не запускается и продолжает выдавать исключение числового формата в строке, ошибка "Исключение в потоке"main" java.lang.NumberFormatException: для входной строки: "SAN 1905 1808+24 1512+17 1209+10 1708-06 2016-16 211831 211941 192652" ""
intAlt = Integer.parseInt(strAlt);
Я не уверен, почему это происходит, и буду признателен за любые советы по этому вопросу.
private int getPos(String strAlt)
{
int intAlt;
int intPos =0;
intAlt = Integer.parseInt(strAlt);
switch (intAlt)
{
case 3:
intPos = 4;
break;
case 6:
intPos = 9;
break;
case 9:
intPos = 17;
break;
case 12:
intPos = 25;
break;
case 18:
intPos = 33;
break;
case 24:
intPos = 41;
break;
case 30:
intPos = 49;
break;
case 34:
intPos = 56;
break;
case 39:
intPos = 63;
break;
}
return intPos;
}
1 ответ
Решение
Если вы передадите "SAN 1905 1808+24 1512+17 1209+10 1708-06 2016-16 211831 211941 192652" в getPos(String strAlt), он выполнит:
intAlt = Integer.parseInt(strAlt);
Конечно, это вызовет исключение. Смотрите этот документ