创建一个json对象并向其添加新的键值对

时间:2015-06-18 07:29:49

标签: json scala playframework play-json

我有一张格式<String, Any>的scala地图。我的目标是迭代地图的所有键并创建一个由所有这些k,v对组成的新json对象。我正在为json库使用play框架。

我试过了:

var out  = JsNull
for (str <- inp) {
    out = out.as[JsObject] + (str -> Json.toJson(inp(str)))
}

然而,Json.toJson返回一个JsonNode,而它期待一个JsValue。我已经查看了这个SO Question来添加新项目。

问题1:如何将JsonNode转换为JsValue

问题2:这是scala中的错误实现。我正在使用var。我如何转换相同的逻辑,以便我使用val。我对函数式编程特别陌生,所以很难从通常的迭代循环中思考。

0 个答案:

没有答案