Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何将Json.obj附加到Json.arr Scala中?_Arrays_Json_Scala - Fatal编程技术网

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

Arrays 如何将Json.obj附加到Json.arr Scala中?,arrays,json,scala,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:

我是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。

欢迎使用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}]

我在play文档中找到了将JsValue附加到JsArray的必要方法


作为旁注:仅当您打算稍后更新该变量时才使用
var
。当您的值在程序运行期间不会改变时,请使用
val
。节约地使用
var
被认为是一种好的风格。

我想你是在使用库吧?是Json播放库吗?
Json.arr
应该是一个vararg
JsValueWrapper*
JsArray
接受一个
Seq[JsValue]
,两者都可以“动态”准备。你试过什么了?谢谢
val res=y:+(x)
它只添加一个
Json.obj
,但需要将
Json.obj()
附加到
val y
中。所以,我尝试了'y=y:+(x)`。成功了!这是正确的方法吗?如果是,您会更新您的答案吗?请更新,我会将其标记为正确(lol)