Scala替换列表中的对象

Scala替换列表中的对象,scala,json4s,Scala,Json4s,我在scala中有一个JValues列表,格式如下: [{id:“foo”值:{…},{}] 我想浏览一下列表,如果id等于某个值,则替换这些值。在Java中,我有以下代码 newList = List() for (item in list) { if (item.id == id) { newList.add(newValues) } else { newList.add(item) } } } } 在Scala中如何执行此操作?假设您的列表是Scal

我在scala中有一个JValues列表,格式如下:
[{id:“foo”值:{…},{}]

我想浏览一下列表,如果id等于某个值,则替换这些值。在Java中,我有以下代码

newList = List()

for (item in list) {
  if (item.id == id) { 
    newList.add(newValues)

  }
  else {
    newList.add(item)
  }
}
} }


在Scala中如何执行此操作?

假设您的列表是Scala不可变列表,您可以使用列表上的
映射来创建新列表。在
映射中
传递一个函数,该函数执行您想要执行的检查。
val ary: JArray = //some value
ary.children.map {
    case JObject if myid == JObject.getField("id") => new JObject(myid, newvalue)
    case other => other
}