hashmap按值排序
时间: 2023-12-16 09:27:51 浏览: 70
可以使用Java 8的Stream API来对HashMap按值进行排序。具体实现方法如下:
```java
// 创建一个HashMap
HashMap<Integer, String> map = new HashMap<>();
map.put(1, "apple");
map.put(2, "banana");
map.put(3, "orangemap.put(4, "pear");
// 使用Stream API对HashMap按值进行排序
LinkedHashMap<Integer, String> sortedMap = map.entrySet()
.stream()
.sorted(Map.Entry.comparingByValue())
.collect(Collectors.toMap(
Map.Entry::getKey,
Map.Entry::getValue,
(e1, e2) -> e1,
LinkedHashMap::new
));
// 输出排序后的结果
System.out.println(sortedMap);
```
上述代码中,我们首先创建了一个HashMap,并向其中添加了一些键值对。然后,我们使用Stream API对HashMap按值进行排序,最后将排序后的结果存储在一个LinkedHashMap中。在使用Stream API对HashMap进行排序时,我们使用了`Map.Entry.comparingByValue()`方法来指定按值排序,使用了`Collectors.toMap()`方法来将排序后的结果存储在一个LinkedHashMap中。
阅读全文