BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));//открываем ввод
        try {
            FileInputStream f1  = new FileInputStream(reader.readLine()); //читаем с консоли 1й файл
            FileInputStream f2  = new FileInputStream(reader.readLine()); //читаем с консоли 2й файл

            reader.close(); // закрываем поток чтения
            String s;

            BufferedReader reader1 = new BufferedReader(new InputStreamReader(f1));//открываем поток чтения из файла 1
            while (true) {
                s = reader1.readLine();  // считываем в цикле по очерёдно все строки из первого файла
//и записываем его в переменную, которую потом добавлю в allLine
                if (s == null) // если вводить нечего,
                    break; // то выходим из цикла while
                allLines.add(s); // добавляем в список считанную строку
            }
            BufferedReader reader2 = new BufferedReader(new InputStreamReader(f2)); //открываем поток чтения из файла 2
            while (true) {
                s = reader2.readLine(); // // считываем строки из второго файла
                if (s == null) // если вводить нечего,
                    break; // то выходим из цикла while
                forRemoveLines.add(s);//// добавляем в список считанную строку
            }
        }   catch (CorruptedDataException e) {
            System.out.println("Error");
        }
reader1.close
    reader2.close
    }
правильно ли я понял как работает код? Можно еще как-то упростить код?