Что не так ?
package com.javarush.task.task18.task1823;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;
/*
Нити и байты
*/
public class Solution {
public static Map<String, Integer> resultMap = new HashMap<String, Integer>();
public static void main(String[] args) {
try(BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
while (reader.ready()) {
String fileName = reader.readLine();
if(fileName.equals("exit")) {
break;
}
ReadThread thread = new ReadThread(fileName);
thread.start();
}
} catch (Exception e) {
System.out.println("Buffer reader is down");
}
}
public static class ReadThread extends Thread {
private String fileName;
public ReadThread(String fileName) {
this.fileName = fileName;
}
@Override
public void run() {
try(FileInputStream input = new FileInputStream(fileName)) {
int [] byteRepeat = new int[input.available()];
while (input.available() > 0) {
int fileByte = input.read();
byteRepeat[fileByte]++;
}
int maxRepeat = 0;
int maxRepeatByte = 0;
for (int i = 0; i < byteRepeat.length; i++) {
if (maxRepeat < byteRepeat[i]) {
maxRepeat = byteRepeat[i];
maxRepeatByte = i;
}
}
synchronized (resultMap) {
resultMap.put(fileName, maxRepeatByte);
}
} catch (Exception e) {
System.out.println("Input stream down");
}
}
}
}