F# 學習筆記 4 更多函式
2012-02-11
// 函式
// ---------------------------------------------------------------
/// 計算輸入值之平方的函式
let Square x = x*x
// 在值清單之間對應函式
let squares1 = List.map Square [1; 2; 3; 4]
let squares2 = List.map (fun x -> x*x) [1; 2; 3; 4]
// 管線
let squares3 = [1; 2; 3; 4] |> List.map (fun x -> x*x)
let SumOfSquaresUpTo n =
[1..n]
|> List.map Square
|> List.sum
建立函式是Functional language 的最常手法所以F# 建立它的方法也同樣多姿多彩
let squares2 = List.map (fun x -> x*x) [1; 2; 3; 4]這句最能表現F# 的魅力
fun x-> x*x 是anonymous function
因為呼叫方法和shell 一樣, 所以squares2 就變所List 放到裡面去(1;4;9;16)