【发布时间】:2012-04-03 00:31:07
【问题描述】:
可能重复:
Why Option[T]?
引用类型提供特殊值null,意思是“没有值”。值类型没有这样的值,这就是 C# 引入可选值类型(以及它们的特殊语法)的原因。
Scala 的Option[T] 具有三个不同的“空”值:null、None 和Some(null)。就安全性和可表达性而言,这种增加的复杂性究竟给我们带来了什么?我什么时候用哪个?
【问题讨论】:
-
“这就是 C# 引入可选值类型的原因” 不是这个原因。
-
这是为什么
Option优于null的最佳解释之一:Why Scala's "Option" and Haskell's "Maybe" types will save you from null
标签: c# scala null nullable option