F# メモ Option
Option型
C#でいうNullable型のようなもので、値を持たないことも表せるようになる。
引数 x が自然数なら x を、負の数なら None (値を持たない) を返す。
> let natural x =
if x >= 0 then Some x
else None;;
val natural : int -> int option
if x >= 0 then Some x
else None;;
val natural : int -> int option
| Option.get ‘a option -> ‘a |
Option型 は Some (値を持っている) か None (値を持たない) のいずれかを表し、
Some の場合は値を取得できる。
None に対し Option.get を行うと例外が発生する。
> let a = natural 100
let b = natural -100
let c = Option.get a;;
val a : int option = Some 100
val b : int option = None
val c : int = 100
let b = natural -100
let c = Option.get a;;
val a : int option = Some 100
val b : int option = None
val c : int = 100
| Option.isSome ‘a option -> bool |
引数が Some なら true を、None なら false を返す。
| Option.isNone ‘a option -> bool |
引数が Some なら true を、None なら false を返す。

rei@sikios.com
コメントはまだありません。