我收到以下错误消息:
[error] found : AnyVal
[error] required: Int
但是
Int
延伸
AnyVal [1]
所以我相信
Java
,
Integer
可以从
Object
为什么它不起作用
Scala
,我错过了什么:
[1] final abstract class Int private extends AnyVal
我还尝试了一个简单的例子:
val a: AnyVal = 5
def aTob(a: Int): Int = a * 5
aTob(a)
错误:(5,73)类型不匹配;
发现:AnyVal
必填项:Int
但以下作品:
val a: Any = 5
def aTob(a: Int): Int = a * 5
aTob(a.asInstanceOf[Int])
我不想显式地施法,但应该是隐式施法。
[编辑:]我也试过
Any
-
更新:
def getValue(dType: String): Any = {
dType.toLowerCase() match {
case "double[3]" =>
10d
case "float" =>
1f
}
val d = getValue("double[3]")
val f = getValue("float")
SomeClass(d, f)
case class SomeClass(val d : Double, val f: Float)