java用stream流 map<string.Byte> 根据map的value排序
时间: 2024-02-27 20:58:52 浏览: 98
您可以使用Java 8中的Stream API来实现这个功能。具体步骤如下:
1.定义一个Map<String, Byte>
,并初始化它。
2.使用entrySet()
方法将Map转换为Stream<Map.Entry<String, Byte>>
。
3.使用sorted()
方法和一个lambda表达式来排序Stream,lambda表达式应按照value值进行排序。
4.使用map()
方法将Stream中的元素映射为一个新的Stream<String>
,其中每个元素为原Map中的key。
5.使用forEach()
方法遍历Stream,输出每个key值。
示例代码如下:
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
Map<String, Byte> myMap = Map.of("hello", (byte) 3, "world", (byte) 2, "foo", (byte) 4, "bar", (byte) 1);
myMap.entrySet().stream()
.sorted(Map.Entry.comparingByValue())
.map(Map.Entry::getKey)
.forEach(System.out::println);
}
}
输出结果为:
bar
world
hello
foo
相关推荐


















