gpt4 book ai didi

Java 8 流 : Map with values from sub field

转载 作者:行者123 更新时间:2023-11-29 07:30:56 25 4
gpt4 key购买 nike

我正在尝试创建一个 Map<String, List<Moo>> fooMoos;

来自以下类结构:

class Foo {
String id;
Bar bar;
}

class Bar {
List<Moo> moos;
}

List<Foo> foos;

如果 moos 直接是 Foo 的一个字段,我会这样做

Map<String, List<Moo>> fooMoos = foos.stream().collect(Collectors.toMap(Foo::getId, Foo::getMoos));

但是您如何使用子字段做到这一点?有没有类似 Foo::getBar::getMoos 的东西?

我觉得这里需要一个平面 map ,但不知道该怎么做。

最佳答案

函数引用很有用,但它们不支持链接。你需要使用像这样的 lambda

foo -> foo.bar.moos

foo -> foo.getBar().getMoos()

关于Java 8 流 : Map with values from sub field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42820915/

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