試圖將可選/可空的java布爾值讀入scala布爾值。將可空的java布爾轉換爲scala時出錯布爾值
val nullableJavaBool: java.lang.Boolean = java.lang.Boolean.TRUE val x: scala.Boolean = Option(nullableJavaBool).getOrElse(java.lang.Boolean.FALSE) val y: scala.Boolean = Option(nullableJavaBool).getOrElse(false)
[scalac-2.11] /myworkspace/MyClass.scala:43: error: type mismatch; [scalac-2.11] found : Any [scalac-2.11] required: Boolean [scalac-2.11] val x: scala.Boolean = Option(nullableJavaBool).getOrElse(java.lang.Boolean.FALSE) [scalac-2.11]
^[scalac-2.11]/myworkspace/MyClass.scala:43: error: type mismatch; [scalac-2.11] found : Any [scalac-2.11] required: Boolean [scalac-2.11] val y: scala.Boolean = Option(nullableJavaBool).getOrElse(false)
能否請您解釋一下這個錯誤背後的原因,什麼是更好的方式來實現這一目標:
我同時使用以下方法得到錯誤?
@STaefi,沒有貌似不同的問題。 – vitalii