foreach循环遍历list scala中map和foreach的区别?

scala中map和foreach的区别?scala中的Set对象都有foreach和map方法。这两个方法的共同点是,它们用于遍历集合对象并为每个项执行指定的方法。两者的区别在于foreach没有返

scala中map和foreach的区别?

scala中的Set对象都有foreach和map方法。这两个方法的共同点是,它们用于遍历集合对象并为每个项执行指定的方法。两者的区别在于foreach没有返回值(确切地说,它返回void),map返回collection对象。查看以下代码和运行结果:B.getClass获取void,而C.getClass获取collection。查看代码的第9-11行,foreach和map的结果是一致的。结论是foreach不能代替map,而map方法可以代替foreach。问:为什么Scala提供foreach和map?在我看来,作为一种支持函数编程范式的语言,Scala必须引入一种机制来支持数学中的函数概念。在数学中,函数是映射的,所以scala中有映射方法也就不足为奇了。Foreach仅在不需要对集合执行映射操作,但需要遍历集合时使用。总之,foreach用于遍历一个集合,map用于将一个集合映射(转换)到另一个集合。[java]查看纯拷贝