我想根据变量创建一个Map
,例如:
scala> val a = "H"
a: String = H
scala> val b = "C"
b: String = C
scala> Map(a, b)
<console>:14: error: type mismatch;
found : String
required: (?, ?)
Map(a, b)
^
<console>:14: error: type mismatch;
found : String
required: (?, ?)
Map(a, b)
^
如您所见,编译器抱怨。我在做什么错了?
答案 0 :(得分:2)
Scala用于实例化Map
的语法如下:
val myMap: Map[K, V] = Map(k1 -> v1, k2 -> v2, ...)
其中K
是键的类型,而V
是值的类型。
答案 1 :(得分:1)
您的代码段中的问题是没有构造方法/应用方法来构建需要两个字符串参数的Map
。
字符串键和字符串值映射的正确方法/语法为:
val a = "H"
val b = "C"
val testMap: Map[String, String] = Map(a -> b)
通常使用以下语法:
val testMap: Map[K, V] = Map(k1 -> v1, k2 -> v2, ...)