码迷,mamicode.com
首页 > 编程语言 > 详细

函数组合子

时间:2015-06-18 21:50:48      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

List(1, 2, 3) map squared对列表中的每一个元素都应用了squared平方函数,并返回一个新的列表List(1, 4, 9)。我们称这个操作map 组合子。 他们常被用在标准的数据结构上。

map:

map对列表中的每个元素应用一个函数,返回应用后的元素所组成的列表。

scala> numbers.map((i: Int) => i * 2)
res0: List[Int] = List(2, 4, 6, 8)
或传入一个部分应用函数

scala> def timesTwo(i: Int): Int = i * 2
timesTwo: (i: Int)Int

scala> numbers.map(timesTwo _)
res0: List[Int] = List(2, 4, 6, 8)

foreach:

foreach很像map,但没有返回值。foreach仅用于有副作用[side-effects]的函数。

scala> numbers.foreach((i: Int) => i * 2)
什么也没有返回。

你可以尝试存储返回值,但它会是Unit类型(即void)

scala> val doubled = numbers.foreach((i: Int) => i * 2)
doubled: Unit = ()

 

函数组合子

标签:

原文地址:http://www.cnblogs.com/wlwgcdxc/p/4587079.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!