Почему данную запись удаления строк (стр. 85, 86, 87) не принимает валидатор, результат идентичный.
//package com.javarush.task.task17.task1721;
//
//import java.io.BufferedReader;
//import java.io.FileReader;
//import java.io.InputStreamReader;
//import java.util.ArrayList;
//import java.util.List;
//
///*
//Транзакционность
//*/
//
//public class Solution {
// public static List<String> allLines = new ArrayList<String>();
// public static List<String> forRemoveLines = new ArrayList<String>();
//
// public static void main(String[] args) {
// }
//
// public void joinData() throws CorruptedDataException {
//
// }
//}
package com.javarush.task.task17.task1721;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Транзакционность
*/
public class Solution {
public static List<String> allLines = new ArrayList<String>();
public static List<String> forRemoveLines = new ArrayList<String>();
public static void main(String[] args) throws CorruptedDataException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
try {
String file1 = bufferedReader.readLine();
String file2 = bufferedReader.readLine();
// String file1 = "C:\\Users\\Admin\\Documents\\dima\\1.txt";
// String file2 = "C:\\Users\\Admin\\Documents\\dima\\2.txt";
FileReader fileReader1 = new FileReader(new File(file1));
FileReader fileReader2 = new FileReader(new File(file2));
BufferedReader bufferedReader1 = new BufferedReader(fileReader1);
BufferedReader bufferedReader2 = new BufferedReader(fileReader2);
String lineFile1 = bufferedReader1.readLine();
String lineFile2 = bufferedReader2.readLine();
while (lineFile1 != null) {
allLines.add(lineFile1);
lineFile1 = bufferedReader1.readLine();
}
while (lineFile2 != null) {
forRemoveLines.add(lineFile2);
lineFile2 = bufferedReader2.readLine();
}
} catch (Exception e) {
e.printStackTrace();
}
new Solution().joinData();
}
public void joinData() throws CorruptedDataException {
boolean bool = true;
if (allLines.size() == forRemoveLines.size()) {
for (int i = 0; i < allLines.size(); i++) {
if (!allLines.get(i).equals(forRemoveLines.get(i))) {
bool = false;
break;
}
}
} else bool = false;
if (!bool) {
allLines.clear();
throw new CorruptedDataException();
} else {
for (String str2: forRemoveLines){
allLines.remove(allLines.indexOf(str2));
}
}
}
}
a// удаляем а b или allLines b