小编Sno*_*now的帖子

流式传输地图列表并收集特定密钥

这是我的清单:

[
    {name: 'moe', age: 40}, 
    {name: 'larry', age: 50}, 
    {name: 'curly', age: 60}
];
Run Code Online (Sandbox Code Playgroud)

我想挖name取值并创建另一个List像这样:

["moe", "larry", "curly"]
Run Code Online (Sandbox Code Playgroud)

我写了这段代码,它的工作原理如下:

List<String> newList = new ArrayList<>();
for(Map<String, Object> entry : list) {
    newList.add((String) entry.get("name"));
}
Run Code Online (Sandbox Code Playgroud)

但是如何在使用中做到这一点stream.我试过这个代码不起作用.

List<String> newList = list.stream().map(x -> x.get("name")).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

6
推荐指数
1
解决办法
2096
查看次数

标签 统计

java ×1

java-8 ×1

java-stream ×1