jdk8获取map中某一个属性的集合
时间: 2023-05-04 07:02:31 浏览: 159
在jdk8中,获取map中某一个属性的集合可以通过以下步骤实现:
1. 使用`map.values()`获取map中所有的value,返回一个集合类型
2. 使用stream进行操作,先使用`map.values().stream()`获取stream
3. 使用`map.value().stream().map()`方法将每个value映射成所需的属性,并返回一个新的stream
4. 使用`map.values().stream().map().collect(Collectors.toList())`将属性值收集到一个新集合中
下面是具体实现代码:
```java
Map<String, Integer> map = new HashMap<>();
map.put("key1", 10);
map.put("key2", 20);
map.put("key3", 30);
List<Integer> values = map.values().stream()
.map(value -> value * 2) //获取属性值并处理
.collect(Collectors.toList());
System.out.println(values); //[20, 40, 60]
```
上述代码中,我们使用了map的values方法获取所有的value集合,并将其转化为stream类型。然后使用map方法将每个value乘上2,并返回一个新的stream。最后使用collect方法将所有的属性值收集到一个新的List集合中。我们可以将map.values().stream().map()中的lambda表达式替换为任何需要的操作,以获取不同的属性集合。
阅读全文