【发布时间】:2017-05-10 08:25:13
【问题描述】:
我正在尝试使用另一个 Int 大小的数组创建一个 Char 数组。代码无法编译:
object Main {
def main(args: Array[String]): Unit = {
val mapping = Map(1 -> "ABC", 2 -> "DEF")
val a = mapping.keySet.toArray
val c = Array[Char](a.length)
}
}
编译器抛出错误:“type mismatch; found : Int required: Char”
当我将上面的代码更改为:
val c = Array[Char](2) // no compiler error
看起来编译器不是将我的输入解释为大小参数,而是认为它是一个 Char,例如 Char 数组的初始元素
由于在 java 中这段代码可以毫无问题地编译,我想知道 在Scala中使用另一个数组长度作为大小参数来初始化不同数组的正确方法是什么?
【问题讨论】: