【发布时间】:2017-02-09 16:49:54
【问题描述】:
我是 Scala 新手。我有一个 Scala 函数,它的一个参数使用“选项”:
def generateTimeSnippet(startOfSentence: Double, endOfSentence: Option[Double]): (Double, Option[Double]) = {
...
}
当我调用这个函数时,我给参数赋值:
val snippets = generateTimeSnippet(startOfSentence = 10d, endOfSentence = 20.5)
但这会导致类型不匹配错误: “类型不匹配;发现:Double(10.0) required: Option[Double]”
我觉得这很奇怪。为什么会这样?我不应该被允许对定义为 Option[Double] 的参数使用 Doubles 吗?
【问题讨论】:
-
在此明确指出
Option不是特殊语言功能可能会很有用。是普通类型。