1

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

我试过这个:

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

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

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

问题 2:这在 scala 中是一个糟糕的实现。我正在使用 var。如何转换相同的逻辑以便使用 val。我对函数式编程特别陌生,因此很难摆脱通常的迭代循环。

4

0 回答 0