gpt4 book ai didi

java - 按值对Map 进行排序

转载 作者:行者123 更新时间:2023-12-02 06:23:07 26 4
gpt4 key购买 nike

我对Java比较陌生,经常发现我需要对值排序Map<Key, Value>

由于值不是唯一的,因此我发现自己将keySet转换为array,并使用自定义比较器对数组进行排序,该自定义比较器对与键关联的值进行排序。

有更容易的方法吗?

最佳答案

这是通用的版本:

public class MapUtil {
public static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) {
List<Entry<K, V>> list = new ArrayList<>(map.entrySet());
list.sort(Entry.comparingByValue());

Map<K, V> result = new LinkedHashMap<>();
for (Entry<K, V> entry : list) {
result.put(entry.getKey(), entry.getValue());
}

return result;
}
}

关于java - 按值对Map <Key,Value>进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55816451/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com