簡體   English   中英

Scala:當我使用“Option”時,為什么會出現類型不匹配錯誤?

[英]Scala: Why do I get a type mismatch error when I use “Option”?

我是Scala的新手。 我有一個Scala函數,其中一個參數使用“Option”:

def generateTimeSnippet(startOfSentence: Double, endOfSentence: Option[Double]): (Double, Option[Double]) = {
   ...
}

當我調用這個函數時,我給參數提供了文字值:

val snippets = generateTimeSnippet(startOfSentence = 10d, endOfSentence = 20.5)

但這會導致類型不匹配錯誤:“類型不匹配;找到:需要Double(10.0):選項[Double]”

我覺得這很奇怪。 為什么會這樣? 我不應該被允許使用Doubles作為定義為Option [Double]的參數嗎?

當然,對於Option[Double]類型的參數,您不能發送Double類型。 它們是不同的類型。

您可以發送Some(20.5)類型Option[Double]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM