Java 8 Map和Reduce不会运行

时间:2013-02-01 23:58:46

标签: java lambda java-8 openjdk

我使用Project Lambdas的.map()方法从List对象中提取一些数据。以前,Jdk 1.8包含Mapper接口,但现在,我看到它的map方法获取了Function接口。我的方法用法如下:

 List<Nut> nutList =new ArrayList<Nut>();

我已经向nutList添加了一些项目,我使用下面的方法通过getter提取字段值。

nutList.stream().map(n->n.getShell())

但是n参数上面的行为类似于Object,它不能访问原始对象的方法。这种用法通常使用Mapper Functional接口运行。

1 个答案:

答案 0 :(得分:1)

在b75下,以下代码编译并正确运行:

    List<Nut> nutList =new ArrayList<>();
    nutList.stream().map(n -> n.getShell()).forEach(System.out::print);

也许您使用的是旧版本?