F# 可以把几个函数组合成新函数

C#能做的,F#基本都能做,但F#能做的,C#未必能做。

F#中的函数可以把几个函数组合起来使用。下面的例子是把由 function1 和 function2 这两个函数通过运算符“>>”(或“<<”)组合而成funuoction3,然后可以拿function3使用。

 

let function1 x = x + 1

let function2 x = x * 2

let function3 = function1 >> function2

let result5 = function3 100

运算结果是 202。

 

再看下面的例子:

let addOne x = x + 1
let timesTwo x = 2 * x
 
let Compose1 = addOne << timesTwo
let Compose2 = addOne >> timesTwo
 
// 结果是 5
let result1 = Compose1 2
 
//结果是 6
let result2 = Compose2 2
posted @ 2015-01-08 22:04  俊先  阅读(467)  评论(1编辑  收藏  举报