Программа корректно отрабатывает, но валидатор не проходит...
Валидатор пишет: "Программа должна выводить в консоль каждое имя и сумму всех его значений, все данные должны быть отсортированы в возрастающем порядке по имени."
Голову сломал, на первый взгляд-все ок. Но не проходит...
Может кто подскажет?
Заранее благодарю!
package com.javarush.task.task19.task1919;
/*
Считаем зарплаты
*/
import javax.swing.text.html.parser.Entity;
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new FileReader(args[0]));
Map<String, Double> map = new TreeMap<>();
boolean IsFirstLine = true;
while (bufferedReader.ready())
{
String s = bufferedReader.readLine();
int MestoPprobela = s.indexOf(" ");
if (IsFirstLine) //пропускаем BOM в начале файла
{
IsFirstLine = false;
String familia = (s.substring(1, MestoPprobela+1)).trim();
Double d = Double.parseDouble(s.substring(MestoPprobela+1));
map.put(familia,d);
}
else
{
String familia = (s.substring(0, MestoPprobela+1)).trim();
Double d = Double.parseDouble(s.substring(MestoPprobela+1));
if (!map.containsKey(familia))
{
map.put(familia,d);
}
else
{
Double temp = map.get(familia);
Double result = temp+d;
map.replace(familia, result);
}
}
}
bufferedReader.close();
for (Map.Entry<String, Double> entry: map.entrySet())
{
String key = entry.getKey();
Double value = entry.getValue();
System.out.println(key + " " + value);
}
}
}