gpt4 book ai didi

java - Java 8 中是否有等效于 Javascript 的 Array.map?

转载 作者:行者123 更新时间:2023-12-04 17:15:53 24 4
gpt4 key购买 nike

Java 中是否有相当于 Javascript 的 Array.map

我一直在玩 Java 8:

List<Long> roleList = siteServiceList.stream()
.map(s -> s.getRoleIdList()).collect(Collectors.toList());

但这不起作用我不知道为什么警告说 Incompatible Type

我怎样才能在 Java8 中做到这一点?

最佳答案

如果 roleIdListList<Long> 并且您想获得 List<Long>,则必须使用 flatMap 代替:

List<Long> roleList = siteServiceList.stream()
.flatMap(s -> s.getRoleIdList().stream())
.collect(Collectors.toList());

如果你坚持使用 map 返回类型应该是 List<List<Long>> :
List<List<Long>> roleList = siteServiceList.stream()
.map(MyObject::getRoleIdList)
.collect(Collectors.toList());

关于java - Java 8 中是否有等效于 Javascript 的 Array.map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47495234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com