В цикле While считываются строки, условие пропускает только четные, все хорошо, только вот на выходе программы пишет null и поток не закрывает. В упор не пойму почему ArrayList l не заполняется.
package com.javarush.task.task13.task1326;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Solution {
public static void main(String[] args) {
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s = reader.readLine();
FileInputStream fis=new FileInputStream(s);
reader = new BufferedReader(new InputStreamReader(fis));
ArrayList<Integer> l=new ArrayList<>();
int temp;
while (!(s=reader.readLine()).isEmpty())
{
if (Integer.parseInt(s)%2==0)
{
temp=Integer.parseInt(s);
l.add(temp);
}
}
Collections.sort(l);
for(int i:l)
{
System.out.println(i);
}
fis.close();
}catch (Exception e){
System.out.println(e.getMessage());
}
}
}