Ну и что не так? У меня прекрасно работает это решение
package com.javarush.task.task19.task1919;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
import java.util.TreeMap;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
Считаем зарплаты
*/
public class Solution {
public static void main(String[] args) throws IOException {
Map<String, Double> matrix = new TreeMap<>();
BufferedReader br = new BufferedReader(new FileReader(args[0]));
Pattern pattern = Pattern.compile("([а-яА-Я]+) (\\d+\\.?\\d{0,})");
while (br.ready()) {
Matcher matcher = pattern.matcher(br.readLine());
if (matcher.find()) {
String lastName = matcher.group(1);
Double salary = Double.parseDouble(matcher.group(2));
if (!matrix.containsKey(lastName))
matrix.put(lastName, salary);
else
matrix.put(lastName, matrix.get(lastName)+salary);
}
}
br.close();
for (Map.Entry<String, Double> pair: matrix.entrySet()) {
System.out.println(pair.getKey()+" "+pair.getValue());
}
}
}