可選類型

在編程語言 （ 尤其是函數式編程語言 ） 和類型論中 ， 可選類型  是一種表示可選值的多態類型 ， 也稱作可能類型  。 例如 ， 函數可以使用可選類型的返回值 ， 表示執行該函數後可能返回有意義的值 ， 也可能不返回 。 可選類型的構造函數通常有兩種形式 ： 一種形式不包含任何參數 ， 表示空 （ 常記作 None 或者 Nothing ） ； 另一種形式包含原始數據類型 A （ 常記作 Just A 或者 Some A ） 。 面向對象編程領域可空類型的概念 （ 常記作 A? ） 與可選類型類似 ， 但並不完全相同 ， 兩者之間的主要區別在於可選類型不支持嵌套 （ Maybe ( Maybe A ) ≠ Maybe A ） ， 而可空類型支持 （ String ?? = String? ） 。