在Java中将流与多个映射一起使用

时间:2018-09-12 09:25:43

标签: java java-stream

我正在使用Java进行以下课程

class School{

    int id;
    Children C

    public getChildren() return C;

}

class Children{
    String name;

    public getname() return name;

}

class Key{

    List<School> S;

    public get Schoollist(){ return S}

}

我正在使用以下代码:

Map<String, Object> params = new HashMap<>();
params.put(
          "Names",
              key.getSchoollist()
              .stream()
              .filter(Objects::nonNull)
              .map(School::getChildren)
              .map(Children::getname)
              .collect(Collectors.toList()));

Java不允许我使用两个地图,如何使用Stream获取子名称。

1 个答案:

答案 0 :(得分:0)

Map<String, Object> params = new HashMap<>();
params.put(
          "Names",
              key.getSchoollist()
              .stream()
              .filter(Objects::nonNull)
              .map(e -> e.getChildren().getname())
              .collect(Collectors.toList()));