import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
String fileName = bufferedReader.readLine();
ArrayList list = new ArrayList();
BufferedReader buffered = new BufferedReader(new InputStreamReader(new FileInputStream(fileName)));
String s;
while (buffered.ready()){
s = buffered.readLine();
int i = Integer.parseInt(s);
if(i%2==0) list.add(i);
}
bufferedReader.close();
buffered.close();
Collections.sort(list);
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
}
Валидатор принял, все хорошо, но программа не работает
При запуске выдает NumberFormatException
Попробовал пройтись по циклу через дебагер, и дело в том, что сначала я читаю число, а потом пустую строку - "", и при попытке сделать из этой строки число выдает ту самую ошибку
Исправил цикл на
while (buffered.ready()){
s = buffered.readLine();
if (!s.equals("")) {
int i = Integer.parseInt(s);
if (i % 2 == 0) list.add(i);
}
}
И теперь программа завершается и выводит все правильно, но вопрос: что это за строка ?