Сбор Flow в Map через associateWith: поведение и ограничения
Нужно собрать элементы Flow в Map, где ключ — сам элемент, а значение вычисляется функцией valueSelector, при этом повторные элементы перезаписывают предыдущее значение.
associateWith собирает поток терминально, вызывает suspend valueSelector для каждого элемента и помещает пару (элемент->значение) в Map; при повторных ключах сохраняется последнее вычисленное значение.
Порядок итерации Map соответствует порядку элементов Flow, операция блокирует сбор до завершения и возвращает готовую Map, поэтому use-case — финальная агрегация после всех эмиссий.
• Повторные элементы перезаписывают значение в Map.
• Итерация Map следует порядку элементов Flow.
#Kotlin