如何使用 java 8 lambda 创建内部成员列表?

how to create list of inner members using java 8 lambda?

我有这个class:

Class A
{
    List<B> B
}


Class B {
    List<C> c
}

给定一个 A 的实例,我如何使用 java lambada 创建一个包含所有内部 c 的列表?

我试过:

    List<Alternative> alternatives = e2EResult.completeRoutingResponses.stream().map(item -> {
        return item.alternatives }).collect(Collectors.toList());

但是没用

你用 flatMap 来做:

List<Alternative> alternatives = 
    e2EResult.completeRoutingResponses.stream()
                                      .flatMap(item -> item.alternatives.stream())
                                      .collect(Collectors.toList());