首页 > 解决方案 > 有没有更简洁的方法来处理 F# 中的双可空类型?

问题描述

我有这两行:

if not start.IsNone && not stop.IsNone then
    let times = TimeArray start.Value stop.Value interval

有没有更清洁的方法来做到这一点?如果是单个值,我可以使用匹配,但是 2 个值呢?(这里是 F# 第 3 天..)

标签: f#

解决方案


您仍然可以使用模式匹配。考虑一下这个毫无意义的示例,它可以帮助您理解整体模式。

let start = Some 1
let stop = Some 2    
let res =
    match start, stop with
    | Some _a, Some _b -> (_a,_b)
    | _, _ -> (0, 0)

推荐阅读