stream 获取map的key
时间: 2023-10-18 14:04:56 浏览: 73
可以使用Java 8中的Stream API,通过`Map.keySet()`方法获取Map中所有的key,然后使用`Stream`进行操作。例如,下面的代码展示了如何获取一个`Map<String, Integer>`中所有key的长度大于4的key:
```
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
map.put("grape", 4);
map.put("watermelon", 5);
List<String> keys = map.keySet().stream()
.filter(key -> key.length() > 4)
.collect(Collectors.toList());
System.out.println(keys); // 输出 [banana, watermelon]
```
上述代码首先通过`Map.keySet()`获取Map中所有的key,然后通过`Stream`进行筛选操作,只保留key的长度大于4的key,并将结果收集到一个`List`中。
相关问题
java stream获取map中key
可以通过Java Stream API的`Map#keySet()`方法获取Map中的所有key,代码示例如下:
```java
Map<Integer, String> map = new HashMap<>();
map.put(1, "one");
map.put(2, "two");
map.put(3, "three");
Set<Integer> keys = map.keySet().stream().collect(Collectors.toSet());
System.out.println(keys); // 输出 [1, 2, 3]
```
上述代码中,先通过`Map#keySet()`方法获取到Map中所有的key,然后通过Stream API转换为Set集合,最终输出所有的key。
stream 对map 根据key排序
stream 对 map 根据 key 排序是一种 Java 8 中的新特性,它可以通过使用 stream 对 map 中的键值对进行排序。在这个过程中,我们可以使用 Map.Entry.comparingByKey() 方法来比较 map 中的键值对,然后使用 sorted() 方法对其进行排序。在排序完成后,我们可以使用 forEachOrdered() 方法将排序后的键值对放入一个新的 LinkedHashMap 中,以保证排序后的顺序不会改变。这个过程可以通过使用 Java 8 中的 Lambda 表达式来实现。在引用中提供了三个不同的实现方式,分别是根据 key 进行升序排序、根据 key 进行倒序排序以及使用 Guava 工具类进行排序。其中,第一个和第二个实现方式都是使用 Java 8 中的 stream 进行排序,而第三个实现方式则是使用了 Guava 工具类。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)