Я скопировал решение из задачи "Самые частые байты" там все работает , но здесь почему-то нет
package com.javarush.task.task18.task1823;
import java.io.*;
import java.util.ArrayList;
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) throws IOException, InterruptedException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s;
while(!(s = reader.readLine()).equals("exit")){
ReadThread readThread = new ReadThread(s);
}
}
public static class ReadThread extends Thread {
FileInputStream fileInputStream;
String filename;
public ReadThread(String fileName) throws FileNotFoundException, InterruptedException {
fileInputStream = new FileInputStream(fileName);
filename = fileName;
this.start();
this.join();
}
@Override
public void run() {
int repeat = 0;
int repeat1 = 0;
ArrayList byteList = new ArrayList();
ArrayList valueList = new ArrayList();
try{
while (fileInputStream.available() < 0){
byteList.add(fileInputStream.read());
}
}
catch (Exception e){
e.printStackTrace();
}
finally {
try {
fileInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
for (int i = 0; i < byteList.size(); i++) {
for (int j = i; j < byteList.size(); j++) {
if(byteList.get(i) == byteList.get(j)){
repeat++;
}
}
if(repeat1 < repeat){
repeat1 = repeat;
}
repeat = 0;
}
for (int i = 0; i < byteList.size(); i++) {
for (int j = i; j < byteList.size(); j++) {
if(byteList.get(i) == byteList.get(j)){
repeat++;
}
}
if(repeat1 == repeat){
valueList.add(byteList.get(i));
}
repeat = 0;
}
resultMap.put(filename, (int) valueList.get(0));
}
}
}

