7

Lift-json 的文档表明我应该能够调用“值”来获取我当前的 JObject 结构作为香草 Scala 映射。这种方法对我不起作用,因为“值”的返回类型是 json.Values 而不是 Map ,如示例所示。我究竟做错了什么?完成此转换是否需要隐式导入?

scala> val json = parse("""{"k1":"v1","k2":"v2"}""")         
json: net.liftweb.json.package.JValue = JObject(List(JField(k1,JString(v1)), JField(k2,JString(v2))))

scala> json.values                                  
res4: json.Values = Map((k1,v1), (k2,v2))

scala> res4.get("k1")                                        
<console>:18: error: value get is not a member of json.Values
   res4.get("k1")
4

1 回答 1

9

不知何故,我在搜索中错过了这个副本: 我可以使用 Scala lift-json 库将 JSON 解析为 Map 吗?

答案是显式转换:

json.asInstanceOf[JObject].values
于 2011-04-06T21:40:59.530 回答