Я отсортировал карту, используя такой поток:

Stream<Map.Entry<Character, Float>> sorted =
                hm.entrySet().stream()
                   .sorted(Collections.reverseOrder(Map.Entry.comparingByValue()));

Я хочу сохранить все значения (отсортированные) в текстовый файл. Как я могу это сделать?

-3
JustCurious 27 Фев 2018 в 03:31

1 ответ

Лучший ответ

Ваш отсортированный поток на самом деле ничего не делает без операции терминала. Соберите его в LinkedHashMap, а затем повторите по нему:

Map<Character, Float> sorted = hm.entrySet()
        .stream()
        .sorted(Collections.reverseOrder(Map.Entry.comparingByValue()))
        .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (a, b) -> a, LinkedHashMap::new);
3
shmosel 27 Фев 2018 в 03:39