使用地图列表获取类型不匹配错误
Getting type Mismatch error with List of Maps
我有一个方法应该排除字符串和地图列表。
我在第二行收到一个错误 // get error as : type mismatch;找到:List[scala.collection.immutable.Map[String,Any]] 需要:List[Map[String,org.json4s.JValue]](扩展为)List[Map[String,org.json4s.JsonAST.JValue ]:
val a = List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo"))
val r = jsonFieldUpdater(json, a)
如果我这样做
val r = jsonFieldUpdater(json, List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo")))
有效。我怎样才能在第一个工作?
Scala 类型推断已将 Map("a" -> 1, "b" -> "foo")
推断为 Map[String, Any]
作为 Int
和 String
的普通超类型是 Any
像这样使用显式类型注释来指导 Scala 编译器
val a: List[Map[String,org.json4s.JsonAST.JValue] = List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo"))
val r = jsonFieldUpdater(json, a)
请注意,此代码将仅在适当的上下文中工作,因为整数和字符串在代码中被视为 org.json4s.JsonAST.JValue
我有一个方法应该排除字符串和地图列表。 我在第二行收到一个错误 // get error as : type mismatch;找到:List[scala.collection.immutable.Map[String,Any]] 需要:List[Map[String,org.json4s.JValue]](扩展为)List[Map[String,org.json4s.JsonAST.JValue ]:
val a = List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo"))
val r = jsonFieldUpdater(json, a)
如果我这样做
val r = jsonFieldUpdater(json, List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo")))
有效。我怎样才能在第一个工作?
Scala 类型推断已将 Map("a" -> 1, "b" -> "foo")
推断为 Map[String, Any]
作为 Int
和 String
的普通超类型是 Any
像这样使用显式类型注释来指导 Scala 编译器
val a: List[Map[String,org.json4s.JsonAST.JValue] = List(Map("inner/age" -> 35, "age" -> 27, "name" -> "foo"))
val r = jsonFieldUpdater(json, a)
请注意,此代码将仅在适当的上下文中工作,因为整数和字符串在代码中被视为 org.json4s.JsonAST.JValue