Преобразование карты в список объектов на основе параметра объекта и значения.JAVA

Программисты JAVA общаются здесь
Гость
Преобразование карты в список объектов на основе параметра объекта и значения.

Сообщение Гость »

У меня есть карта Map metricResultToComputationTime
Результат метрики имеет метод MetricResult::getEndTime
Я хочу получить Список, в котором каждый MetricResult имеет уникальное время окончания. Если время окончания совпадает, я хочу использовать то, у которого время вычислений на карте больше. Как мне это сделать аккуратно?
Я знаю, что есть простые словесные способы сделать это, но я ищу что-то элегантное.
Я пробовал что-то вроде этого:

Код: Выделить всё

List metricResults =
metricResultToComputationTime.entrySet().stream()
.collect(
groupingBy(
MetricResult::getEndTime,
collectingAndThen(maxBy(Map.Entry.comparingByValue()), Optional::get)))
.values();
Но он не компилируется

Подробнее здесь: https://stackoverflow.com/questions/781 ... ter-of-the

Вернуться в «JAVA»