我有这样的功能
def jsonFlatten(obj: JsValue, coun: JsObject = Json.obj(), pref: String = ""): JsObject = {
var con = coun
var kel = ""
var el: JsValue = Json.obj()
obj match {
case JsObject(_) =>
var ob = obj.validate[JsObject].get
ob.value.foreach({
case (k, v) =>
if (pref != "") {
kel = pref + "." + k
} else {
kel = k
}
el = v
el match {
case JsObject(_) =>
con = jsonFlatten(el, con.++(con), kel)
case JsArray(_) =>
con = jsonFlatten(el, con.++(con), kel)
case _ =>
con = con.+(kel -> el)
}
})
case _ =>
}
return con
}
该函数调用线程内的另一个迭代,我想优化这个函数,因为它需要很多时间(大约 300 毫秒),我必须在迭代中调用很多该函数。
有什么建议如何通过并发或有效递归来优化该功能?
感谢作为