Пишет - убедитесь что команда REMOVED содержится у правильных строк. Много вариантов содержимого файлов испробывал в ide REMOVED вроде всегда у нужной строки добавлялся
package com.javarush.task.task19.task1916;
import java.util.ArrayList;
import java.util.List;
import java.io.*;
/*
Отслеживаем изменения
*/
public class Solution {
public static List<LineItem> lines = new ArrayList<LineItem>();
public static void main(String[] args) throws IOException {
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
BufferedReader reader1 = new BufferedReader(new FileReader(input.readLine()));
BufferedReader reader2 = new BufferedReader(new FileReader(input.readLine()));
input.close();
List<String> list1 = new ArrayList<>();
String line1;
while((line1=reader1.readLine())!=null){
list1.add(line1);
}
reader1.close();
List<String> list2 = new ArrayList<>();
String line2;
while((line2=reader2.readLine())!=null){
list2.add(line2);
}
reader2.close();
int count;
if (list1.size()>=list2.size()){count=list1.size();}
else {count=list2.size();}
for (int i=0;i<count;i++){
try{
if (list1.get(i).equals(list2.get(i))){
lines.add(new LineItem(Type.SAME,list1.get(i)));
}
else if (!list1.get(i).equals(list2.get(i))){
if (!list2.contains(list1.get(i))){
lines.add(new LineItem(Type.REMOVED,list1.get(i)));
if (!list1.contains(list2.get(i))){
lines.add(new LineItem(Type.ADDED,list2.get(i)));
}
}
else if (!list1.contains(list2.get(i))){
lines.add(new LineItem(Type.SAME,list1.get(i)));
lines.add(new LineItem(Type.ADDED,list2.get(i)));
}
}}
catch (IndexOutOfBoundsException e){
if (!list1.contains(list2.get(i))){
lines.add(new LineItem(Type.ADDED,list2.get(i)));
}
else {continue;}
}
}
/*for(LineItem l:lines){
System.out.println(l.type+" "+l.line);}*/
}
public static enum Type {
ADDED, //добавлена новая строка
REMOVED, //удалена строка
SAME //без изменений
}
public static class LineItem {
public Type type;
public String line;
public LineItem(Type type, String line) {
this.type = type;
this.line = line;
}
}
}