如何将Json.obj附加到Json.arr Scala中?

时间:2016-08-10 13:20:16

标签: arrays json scala

我是 Scala 的新手。

我希望在Scala的运行时期间将 Json.obj 附加到 Json.arr

Json对象:

var x: JsValue = Json.obj("name" -> "Fiver", "age" -> 4,"role" -> JsNull)

Json数组:

var y: JsValue = Json.arr(x)

在这里,我可以将单个Json.obj附加到Json.arr但是我想动态地将多个Json.obj添加到Json.arr。

我可以这样做:

var y: JsValue = Json.arr(
Json.obj("name" -> "Fiver", "age" -> 4,"role" -> JsNull), 
Json.obj("name" -> "Fiver", "age" -> 4,"role" -> JsNull)
)

逐个追加。我想动态地附加 Json.Obj

1 个答案:

答案 0 :(得分:2)

欢迎来到scala! :)

我相信这是你想要实现的目标:

val x: JsValue = Json.obj("name" -> "Fiver", "age" -> 4,"role" -> JsNull)

val y: JsArray = Json.arr()

val res = y :+(x) 

println(res)

输出将为[{"name":"Fiver","age":4,"role":null}]

我找到了在播放文档https://www.playframework.com/documentation/2.5.x/api/scala/index.html#play.api.libs.json.JsArray

中将JsValue附加到JsArray的必要方法

作为旁注:当您打算稍后更新该变量时,仅使用var。如果在程序粗略期间您的值不会改变,请使用val