用java8 写spark程序, 在最后一步,为何报错需要序列化
List<Integer> list = Arrays.asList(1,2,3,4,5);
JavaRDD<Integer> rdd = sc.parallelize(list);
// java8里的方法引用:为何这样写就报错说需要序列化?
rdd.map(w -> w * 2).foreach(System.out::println);
// 这样写就正确了,为什么?
rdd.map(w -> w * 2).foreach(x -> System.out.println(x));
|