close

微軟推出 .net 平台也有十年的時間了,一直以來都是主推 C# 及 VB.NET。這幾年也推出了直譯式語言 F# (實際上也可當作是編譯式的語言),目前已經到了 3.0 版。雖然 C# 非常強大,但某些情況 F# 也是一個不錯的選擇,本篇文章會介紹 F# 的基本語法,當作是快速入門。

首先是變數的宣告,F# 不需要特別指定變數型態,完全是看後面指定的值而定。

let x = 1;
printfn "%d" x

如果學過 C 語言,對於 printfn 的格式化語法一定相當的熟悉。需要注意的是,變數宣告後就不能再更改值,除非多加 mutable 修飾字,例如:

let mutable x = 1;
x <- 3

更改變數值時,是使用 <- 而不是常見的 =,在 F#中,= 是用來做布林判斷的。

if x = 1 then
    printfn "x = %d" x

上述的程式碼,如果要加 else 區塊,寫法如下:

if x = 1 then
    printfn "x = %d" x
else
    printfn "x not equal 1"

 

接下來介紹 for loop 語法:

let range = [1..10]

for i in range do
    printfn "%d" i

從程式碼中可以看到,for loop 的語法相當簡潔,而且宣告一個陣列也相當的方便。而 while 語法也是一樣:

let mutable iterator = 0

while iterator <> 10 do
    iterator <- iterator + 2
    printfn "%d" iterator

 

除此之外,F# 最方便的地方莫過於宣告函式,像是宣告一個兩數相加的函式:

let add a b =
    a+b

let r2 = add 10 11
printfn "%d" r2

如果函數的邏輯不複雜,這樣的宣告方式可以加速程式的撰寫。

 

接下來介紹與 .net framework 的整合,假設文字的輸出習慣使用 C# 上的使用方式,可以這樣寫:

open System

Console.WriteLine("Hi, .net framework")

 

本篇文章介紹了 F# 的基本語法,但 F# 的威力不只於此,有機會再詳細介紹。

arrow
arrow
    全站熱搜

    卑微研究生 發表在 痞客邦 留言(0) 人氣()