对java map排序
时间: 2023-11-17 18:56:25 浏览: 99
可以使用Java 8的Stream API来对Map进行排序。具体步骤如下:
1. 将Map转换为List,每个元素包含键和值。
2. 使用Comparator对List进行排序。
3. 将排序后的List转换回Map。
以下是示例代码:
```java
import java.util.*;
import java.util.stream.*;
public class MapSorter {
public static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) {
return map.entrySet()
.stream()
.sorted(Map.Entry.comparingByValue())
.collect(Collectors.toMap(
Map.Entry::getKey,
Map.Entry::getValue,
(v1, v2) -> v1,
LinkedHashMap::new));
}
}
```
在上面的代码中,sortByValue方法接受一个Map作为参数,并返回一个按值排序的新Map。如果要按键排序,只需将comparingByValue()替换为comparingByKey()即可。
阅读全文