Если написать код подобным образом (приведен ниже), то возникает ошибка при проверке, что метод main не должен пробрасывать исключения. Если же обернуть вызов метода readData() в оболочку try..catch, то возникает ошибка, что метод main нельзя менять. Если же ничего не указывать, то программа не компилируется. Какой выход есть? Я посмотрел скрины кода по подобной задаче и у многих использовалась конструкция try...catch при этом проверка на сайте не ругалась. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; /* Метод в try..catch */ public class Solution { public static void main(String[] args) throws IOException { readData(); } public static void readData() throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); ArrayList<Integer> list = new ArrayList<>(); try { while (true) { list.add(Integer.parseInt(reader.readLine())); } } catch (NumberFormatException nfe) { for (int i = 0; i < list.size(); i++) System.out.println(list.get(i)); } } }