Java8:从列表的列表中获取属性

Java8:从列表的列表中获取属性,java,java-8,functional-programming,stream,java-stream,Java,Java 8,Functional Programming,Stream,Java Stream,我是Java8新手,我想从联系人列表中获取第一个非空的电话,形成一个人员列表,但我得到的是一个不兼容的类型 错误 在对象中需要一个过滤器;另外,由于您正在返回一个流,因此在此之前您需要一个平面图您能分享一下您的手机类和列表的初始化吗? return segadors .stream() .map(c -> c.getSegadorMedium().stream().map(cm -> Objects.nonNull(cm

我是Java8新手,我想从联系人列表中获取第一个非空的电话,形成一个人员列表,但我得到的是一个不兼容的类型 错误


对象中需要一个
过滤器
;另外,由于您正在返回一个
,因此在此之前您需要一个
平面图

您能分享一下您的手机类和列表的初始化吗?
return segadors
                .stream()
                .map(c -> c.getSegadorMedium().stream().map(cm -> Objects.nonNull(cm.getPhoneSegador())))
                .findFirst()
                .orElse(null);
  return segadors
            .stream()
            .flatMap(c -> c.getSegadorMedium().stream().filter(cm -> Objects.nonNull(cm.getPhoneSegador())))
            .findFirst()
            .orElse(null);