- let绑定常量
let说32你是x的,32.0你是x1的。let x=32 x let x1 = 32.0
val x : int = 32
val x1 : float = 32.0 - let绑定函数
add是一个名字,他是传给我俩值,我用来加let add x y = x+y let x1 = add 8 9
x1的值就是 add 干活的结果。
val add : x:int -> y:int -> int//你看,int +int = int就是这意思
val x1 : int = 17 - let主动告诉别人是什么类型,用:实现
结果:let x:int=32 let x1:float =32.0
val x : int = 32
val x1 : float = 32.0 - 求余数,且返回浮点型 函数
fn绑定一个 x y 的运算结果,结果为float类型let fn(x:int)(y:int):float=float((x+y)%3) fn 5 8
val fn : x:int -> y:int -> float
val it : float = 1.0 - 空格表示隶属关系,就是作用范围
结果: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” - 把函数体专门缩进到下面
第五点代码的存在完全将就是为了验证y的有效区域,函数体实在是不好看,这个才是真正缩进的用处。
val add : x:int -> y:int -> intlet add x y= x+y let x1 = add 8 9
val x1 : int = 17 - 能不能不缩进但是又能表达两句语句呢?
可以,用;接着写,这两种方式分别有个专有名词,一个叫 轻量级语法,一个叫详细语法定义,不叫重量级语法哦。
结果:let x1 = printfn"该语句缩进,轻量级哟" //这句话的返回类型是没有定义的,就是所谓的unit 5 //此行返回类型是int类型
该语句缩进,轻量级哟
val x1 : int = 5
结果:let x2 = printfn"该语句不缩进,用;了哟";5
该语句不缩进,用;了哟
val x2 : int = 5
F#入门学习(二)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.