Такой вариант тоже не проходит
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
import java.util.TreeMap;
public class Solution {
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(new FileReader(args[0]))) {
TreeMap<String, Double> allPeople = new TreeMap<String, Double>();
String[] tmp = reader.readLine().split(" ");
String family = tmp[0];
double wages = Double.parseDouble(tmp[1]);
allPeople.put(family, allPeople.containsKey(family) ? allPeople.get(family) + wages : wages);
for (Map.Entry<String, Double> entry : allPeople.entrySet()) {
System.out.println(entry.getKey() + " " + entry.getValue());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}package com.javarush.task.task19.task1919;
/*
Считаем зарплаты
В метод main первым параметром приходит имя файла.
В этом файле каждая строка имеет следующий вид:
имя значение
где [имя] - String, [значение] - double. [имя] и [значение] разделены пробелом.
Для каждого имени посчитать сумму всех его значений.
Все данные вывести в консоль, предварительно отсортировав в возрастающем порядке по имени.
Закрыть потоки.
Пример входного файла:
Петров 2
Сидоров 6
Иванов 1.35
Петров 3.1
Пример вывода:
Иванов 1.35
Петров 5.1
Сидоров 6.0
*/
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
import java.util.TreeMap;
public class Solution {
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(new FileReader(args[0]))) {
TreeMap<String, Double> allPeople = new TreeMap<String, Double>();
String[] tmp = reader.readLine().split(" ");
String family = tmp[0];
double wages = Double.parseDouble(tmp[1]);
allPeople.merge(family, wages, Double :: sum);
for (Map.Entry<String, Double> entry : allPeople.entrySet()) {
System.out.println(entry.getKey() + " " + entry.getValue());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*Требования:
1. Программа НЕ должна считывать данные с консоли.
2. Программа должна считывать содержимое файла (используй FileReader).
3. Поток чтения из файла (FileReader) должен быть закрыт.
4. Программа должна выводить в консоль каждое имя и сумму всех его значений, все данные должны быть отсортированы в возрастающем порядке по имени.*/
/* решение удалено */
Валидатор принял, но все равно вывод вопросами http://joxi.ru/KAxV5K7IMzEK0m (http://joxi.ru/zANy5NjsBpojG2) ----> http://joxi.ru/GrqzeE9sQeEG5m Можете помочь с этим моментом?