Я собираюсь заменить пустые элементы в ArrayList
значениями начальных / конечных элементов, если они аналогичны, или NA. Программа возвращает false
на начальном этапе выполнения, поэтому я не могу приступить к ее реализации. Что я делаю неправильно? Пожалуйста, предложите подходящий подход для меня, спасибо
File file=new File("file1.csv");
Scanner inputStream;
List<String> header = null; //Store the header in a separate list
List<List<String>> lines = new ArrayList<>();
try{
inputStream = new Scanner(file);
while(inputStream.hasNext()){
String line= inputStream.next();
String[] values = line.split(",");
if (header == null){
header= Arrays.asList(values);
continue;//go to the next line as header is read
}
// Adds the currently parsed line
lines.add(Arrays.asList(values));
}
inputStream.close();
}catch (FileNotFoundException e) {
e.printStackTrace();
}
//fails; outputs "false"
System.out.println(lines.removeAll(Arrays.asList(Arrays.asList(" "))));
//test on 1D arraylist- successful
List<String> colors = new ArrayList<>(Arrays.asList("R", " ", "G", " ", "B"));
colors.removeAll(Arrays.asList(" "));
System.out.println(colors);
// OTHER part of program ..., file2 is expected results
file1
ID 577 592 598 600 612 650 700 822 825 830 840 870
Line0 A A A A
Line1 B B NA B
Line2 B A A A
file2
ID 577 592 598 600 612 650 700 822 825 830 840 870
Line0 A A A A A A A A A A A A
Line1 B B B B NA NA NA NA NA NA NA B
Line2 B NA NA A A A A A A A A A