There is information that program has to read file content from constructor of FileReader.
package pl.codegym.task.task19.task1919;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
FileReader fileReader = new FileReader(args[0]);
BufferedReader bufferedReader = new BufferedReader(fileReader);
Map<String,Double> mapa = new LinkedHashMap<>();
List<String> names = new LinkedList<>();
while (bufferedReader.ready()){
String line = bufferedReader.readLine();
String[]tab = line.split(" ");
double value = Double.parseDouble(tab[1]);
mapa.put(tab[0],value);
}
bufferedReader.close();
fileReader.close();
for (Map.Entry<String,Double> mapka: mapa.entrySet()){
String name = mapka.getKey();
names.add(name);
}
Collections.sort(names);
mapa.clear();
BufferedReader bufferedReader2 = null;
for (int i = 0; i < names.size(); i++) {
double counter = 0;
bufferedReader2 = new BufferedReader(new FileReader(args[0]));
while (bufferedReader2.ready()){
String line = bufferedReader2.readLine();
String[]tab = line.split(" ");
String name = tab[0];
double value = Double.parseDouble(tab[1]);
if (names.get(i).equals(name))
counter+=value;
}
mapa.put(names.get(i),counter);
bufferedReader2.close();
}
for (Map.Entry<String,Double> mapcia: mapa.entrySet()){
System.out.println(mapcia.getKey() + " " + mapcia.getValue());
}
}
}