А все равно что-то не так(
package com.javarush.task.task18.task1823;
import java.io.*;
import java.util.*;
/*
Нити и байты
*/
public class Solution {
static Map<String, Integer> resultMap = new HashMap<>();
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
while (true){
String nameFile = reader.readLine();
if (nameFile.equals("exit")){
break;
}
ReadThread readThread = new ReadThread(nameFile);
readThread.start();
} reader.close();
}
public static class ReadThread extends Thread{
String fileName;
Map<Integer, Integer> map = new HashMap<>();
ArrayList<Integer>byteList = new ArrayList<>();
public ReadThread(String fileName) {
this.fileName = fileName;
}
@Override
public void run() {
try {
FileInputStream fileReader = new FileInputStream(fileName);
while (fileReader.available() > 0){
byteList.add(fileReader.read());
}
fileReader.close();
for (Integer value : byteList){
map.put(value, Collections.frequency(byteList, value));
}
int max = 0;
for (Map.Entry<Integer, Integer> pair : map.entrySet()){
if (max < pair.getValue()){
max = pair.getValue();
} resultMap.put(fileName, pair.getKey());
}
for (Map.Entry<String, Integer> pair2 : resultMap.entrySet()){
System.out.println(pair2.getKey() + " " + pair2.getValue());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}