Я не знаком с онлайн-тестером кода Kattis, но предполагаю, что он проверяет наличие непроверенных исключений, которые могут быть выданы (непроверенное проверенное исключение может привести к тому, что код не будет компилироваться). Я не вижу нигде в коде, который проверяет, что следующий токен является Integer, поэтому, если Integer.parseInt попытается проанализировать что-то, что не является целым числом, он выдаст исключение NumberFormatException.
В зависимости от аудитории вашего приложения, вы можете оставить все как есть (если аудитория - Java-разработчики, которые поймут это исключение), или поймать его, чтобы перебросить что-то более удобное для пользователя (если это не так).
public int getInt() {
// not tested
int nextInt;
try {
nextInt = Integer.parseInt(nextToken());
} catch (NumberFormatException nfe) {
throw new RuntimeException("Invalid number in file");
}
return nextInt;
}
Предположительно, тем не менее, тестер кода все равно будет жаловаться, поскольку он вызывает другое (более удобное для пользователя) исключение: -)