List<Person> personList = Lists.newArrayList();
personList.add(new Person("张三"));
personList.add(new Person("李四"));
personList.stream().map(p-> p.getName()).forEach(s -> System.out.println(s));
System.out.println("----------------");
personList.stream().forEach(p-> System.out.println(p.getName()));
张三
李四
张三
李四
可以看出:
map是把每一个进入的元素转换成另一个元素排出,上面的例子中把person对象转换成了name,有新的元素排出。
forEach是对每一个进入的当前元素执行一段表达式,没有排出另一种元素,上面的例子就是打印了person的name。