如何在Scala中键入cast Char/Int?
我很难让这个角色正常工作 编译器告诉我value如何在Scala中键入cast Char/Int?,scala,casting,Scala,Casting,我很难让这个角色正常工作 编译器告诉我valueaNumber不是objectChar def runCastTest() { val aNumber = 97 val aChar = (Char)aNumber println(aChar) // Should be 'a' } 我做错了什么?因为在scala中所有东西都是一个对象,所以你应该使用aNumber.toChar你不能使用。使用(Char)aNumber尝试调用对象Char中的方法aNumber: sca
aNumber
不是objectChar
def runCastTest() {
val aNumber = 97
val aChar = (Char)aNumber
println(aChar) // Should be 'a'
}
我做错了什么?因为在scala中所有东西都是一个对象,所以你应该使用
aNumber.toChar
你不能使用。使用(Char)aNumber
尝试调用对象Char中的方法aNumber
:
scala> val aNumber = 97
aNumber: Int = 97
scala> val aChar = (Char)aNumber
<console>:5: error: value aNumber is not a member of object Char
val aChar = (Char)aNumber
^
或者按照Nicolas的建议,在Int实例上调用toChar
:
scala> aNumber.toChar
res1: Char = a
你的解释有误导性。有人可能会认为toChar是在Scala中的任何对象上定义的。
scala> aNumber.toChar
res1: Char = a