F#教程:Tuple


tuple是可以将2个以上的数据汇总起来管理的数据类型。要是C#也有就好了。

  F#的tuple实例代码如下:

#light 
let data = (1,2) 
printfn "%A" data 
printfn "%A" (fst data) 
printfn "%A" (snd data)

  fst、snd分别表示 First、Second,可以用来取出最初的两个元素。运行结果是:

(1, 2) 
1 
2

  (1,2)和1,2都是OK的,有没有()都一样。

  如果改写如下这样就会有编译错误。

#light
let data = (1,2,3) 
printfn "%A" data 
printfn "%A" (fst data) 
printfn "%A" (snd data)

  fst, snd只能用在包含两个元素的tuple中。

  调查后,可以通过如下的方法实现:

let data = 1,2,3 
printfn "%A" data 
let a,b,c = data    
printfn "%A" a 
printfn "%A" b 
printfn "%A" c

  运行结果如下:

(1, 2, 3) 
1 
2 
3

  此外通过如下方法,可以通过"_”就可以忽略不关注的要素。

  let a,_,c = data

  tuple的要素不一定要同一类型的,还可以由不同类型组成的tuple:

  let data = 1,"abc"

  此外tuple还可以作为函数的输入参数:

let x = 8,9
let addTuple (a,b) = a + b
printfn "%d" (addTuple x)


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3