F#在线运行

版本:

所属目录
点击了解高性能代码运行API
运行结果
教程手册
代码仓库
极速运行
终端运行
图形+终端

                        
以下是用户最新保存的代码
函数式 赛车模拟 (自由格式) 发布于:2021-02-02 10:52 转换OCaml对象模式 发布于:2021-02-01 00:46 [更多]
显示目录

元组



学习嵌入式的绝佳套件,esp8266开源小电视成品,比自己去买开发板+屏幕还要便宜,省去了焊接不当搞坏的风险。 蜂鸣版+触控升级仅36元,更强的硬件、价格全网最低。

点击购买 固件广场

F#元组

元组是一个逗号分隔的值集合。 这些用于创建特殊数据结构,将相关值组合在一起。

例如,(“Zara Ali”,“Hyderabad”,10)是具有两个字符串值和一个int值的三元组,它具有类型(string string int)。

元组可以是相同或不同类型的对,三元组等。

这里提供一些实例

// Tuple of two integers.
( 4, 5 )

// Triple of strings.
( "one", "two", "three" )

// Tuple of unknown types.
( a, b )

// Tuple that has mixed types.
( "Absolute Classes", 1, 2.0 )

// Tuple of integer expressions.
( a * 4, b + 7)

例 这个程序有一个函数,它接受四个浮点值的元组,并返回平均值

let averageFour (a, b, c, d) =
   let sum = a + b + c + d
   sum / 4.0

let avg:float = averageFour (4.0, 5.1, 8.0, 12.0)
printfn "Avg of four numbers: %f" avg

当你编译和执行程序,它产生以下输出

Avg of four numbers: 7.275000

访问单个元组成员

可以使用模式匹配来评估和打印元组的各个成员。

下面的例子说明了这一概念

let display tuple1 =
   match tuple1 with
   | (a, b, c) -> printfn "Detail Info: %A %A %A" a b c

display ("Zara Ali", "Hyderabad", 10 )
当你编译和执行程序,它产生以下输出 

Detail Info: "Zara Ali" "Hyderabad" 10

F#有两个内置函数fstandsnd,它返回2元组中的第一和第二项。

下面的例子说明了这一概念

printfn "First member: %A" (fst(23, 30))
printfn "Second member: %A" (snd(23, 30))

printfn "First member: %A" (fst("Hello", "World!"))
printfn "Second member: %A" (snd("Hello", "World!"))

let nameTuple = ("Zara", "Ali")

printfn "First Name: %A" (fst nameTuple)
printfn "Second Name: %A" (snd nameTuple)

当你编译和执行程序,它产生以下输出

First member: 23
Second member: 30
First member: "Hello"
Second member: "World!"
First Name: "Zara"
Second Name: "Ali"
由JSRUN为你提供的F#在线运行、在线编译工具
        JSRUN提供的F# 在线运行,F# 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。
yout