Не возвращаются значения с нитей

168
14 апреля 2017, 20:50
package com.javarush.task.task18.task1823;
import java.io.*;
import java.util.*;
public class Solution {
    public static Map<String, Integer> resultMap = new HashMap<String, Integer>();
    public static void main(String[] args) throws IOException
    {
        ArrayList<String> arrayList = new ArrayList<>();
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String read = reader.readLine();
        while(!read.equals("exit"))
        {
            arrayList.add(read);
            read = reader.readLine();
        }
        reader.close();
        ReadThread thread ;
        for (String a : arrayList)
        {
            thread = new ReadThread(a);
            thread.start();
        }
    }
    public static class ReadThread extends Thread {
        String fileName;
        public ReadThread(String fileName)
        {
            this.fileName = fileName;
            //implement constructor body
        }
        public synchronized void run()
        {
            try {
                BufferedReader bufferedReader = new BufferedReader(new FileReader(new File(fileName)));
                int[] arrayByte = new int[256];
                int b;
                while (bufferedReader.ready())
                {
                    b = bufferedReader.read();
                    arrayByte[b]++;
                }
                bufferedReader.close();
                int max = arrayByte[0];
                int bit = 0;
                for(int i = 1; i< arrayByte.length;i++)
                {
                    if(arrayByte[i] > max)
                    {
                        max = arrayByte[i];
                        bit = i;
                    }
                }
                resultMap.put(fileName, bit);
            }
            catch (Exception e)
            {
            }
        }
        // implement file reading here - реализуйте чтение из файла тут
    }
}

Скажите, пожалуйста, в чем ошибка?
После отработки кода resultMap хранит всего одно значение с первой нити, почему не добавляются значения с других нитей?

READ ALSO
Retrofit request

Retrofit request

Подскажите пожалуйста где в Retofit можно посмотреть url запроса, с ключами, обязательными параметрами и тп

209
Влияют ли sleep() или wait() в момент вызова, на флаг isInterrupted() или нет?

Влияют ли sleep() или wait() в момент вызова, на флаг isInterrupted() или нет?

Если я приостанавливаю поток при помощи методов sleep() или wait(), флаг isInterrupted() в этот момент меняется или нет?

190
Обращение к элементу RecyclerView.ViewHolder из AsyncTask

Обращение к элементу RecyclerView.ViewHolder из AsyncTask

Я создал определенный view элемент, код ниже:

170
HQL запрос с map в Java

HQL запрос с map в Java

Как создать запрос HQL в Java вида:

205