По тестам всё верно выводит. Хелп
package com.javarush.task.task19.task1919;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
Считаем зарплаты
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new FileReader(args[0]));
ArrayList<String> list = new ArrayList<>();
while (bf.ready()) {
list.add(bf.readLine());
}
Map<String, Double> map = new TreeMap<>();
Pattern patternOfKey = Pattern.compile("[а-яА-Я]*");
Pattern patternOFValue = Pattern.compile("\\d.*");
for (String s : list) {
Matcher matcherOfKey = patternOfKey.matcher(s);
Matcher matcherOfValue = patternOFValue.matcher(s);
if (matcherOfKey.find() && matcherOfValue.find()) {
String key = s.substring(matcherOfKey.start(), matcherOfKey.end()).trim();
String value = s.substring(matcherOfValue.start(), matcherOfValue.end());
map.merge(key, Double.parseDouble(value), Double::sum);
}
}
Set<Map.Entry<String, Double>> set = map.entrySet();
for (Map.Entry<String, Double> stringStringEntry : set) {
System.out.println(stringStringEntry.getKey() + " " + stringStringEntry.getValue());
}
bf.close();
}
}