F#入門學習(二)

  1. let綁定常量
    let x=32
    x
    let x1 = 32.0
    
    let說32你是x的,32.0你是x1的。
    val x : int = 32
    val x1 : float = 32.0
  2. let綁定函數
    let add x y = x+y
    let x1 = add 8 9
    
    add是一個名字,他是傳給我倆值,我用來加
    x1的值就是 add 幹活的結果。
    val add : x:int -> y:int -> int//你看,int +int = int就是這意思
    val x1 : int = 17
  3. let主動告訴別人是什麼類型,用:實現
    let x:int=32
    let x1:float =32.0
    
    結果:
    val x : int = 32
    val x1 : float = 32.0
  4. 求餘數,且返回浮點型 函數
    let fn(x:int)(y:int):float=float((x+y)%3)
    fn 5 8
    
    fn綁定一個 x y 的運算結果,結果爲float類型
    val fn : x:int -> y:int -> float
    val it : float = 1.0
  5. 空格表示隸屬關係,就是作用範圍
    let add x=
        let y=6
        x+y
    let x1 =y//此處y標紅,因爲上面縮進了,y是局部的,不是全局的
    
    結果:
    val add : x:int -> int
    Program.fs(4,9): error FS0039: 未定義值或構造函數“y”
  6. 把函數體專門縮進到下面
    第五點代碼的存在完全將就是爲了驗證y的有效區域,函數體實在是不好看,這個纔是真正縮進的用處。
    let add x y=
    	   x+y
    let x1 = add 8 9
    
    val add : x:int -> y:int -> int
    val x1 : int = 17
  7. 能不能不縮進但是又能表達兩句語句呢?
    可以,用;接着寫,這兩種方式分別有個專有名詞,一個叫 輕量級語法,一個叫詳細語法定義,不叫重量級語法哦。
    let x1 = 
        printfn"該語句縮進,輕量級喲"  //這句話的返回類型是沒有定義的,就是所謂的unit
        5                            //此行返回類型是int類型
    
    結果:
    該語句縮進,輕量級喲
    val x1 : int = 5
    let x2 = printfn"該語句不縮進,用;了喲";5
    
    結果:
    該語句不縮進,用;了喲
    val x2 : int = 5
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章