[英]how to search and update JsonObject in JsonArray in an efficient approach?
JsonArray-示例:
[{
"name": "table",
"type": "table",
"reportId": 7,
"componentId": 12,
"width": 0,
"height": 0,
"dataType": "DEFAULT"
},
{
"name": "chart",
"type": "chart",
"reportId": 7,
"componentId": 13,
"width": 0,
"height": 0,
"dataType": "DEFAULT"
}
]
我必須用 Key(name,type) 搜索 JsonObject,如果 jsonObject 與鍵一起存在想要更新或刪除數組中的 jsonObject。
**正常解決方案:**單獨迭代每個JsonObject,尋找key並執行操作。
PS我想用java而不是javascript編寫所有這些邏輯。
您可以使用“ LINQ for JavaScript ”庫。 非常有用的圖書館。 例如。 我們可以像..
Enumerable.From(JsonArray).Where("$.componentId == 12").First().name= "tableName";
您的解決方案很好(n 復雜度)。 我看到的優化的唯一方法是對列表進行排序(我的意思是,如果從數據庫加載它,則按名稱和類型對其進行排序,而不是在 Java 中對其進行排序),以便您知道在訪問之前知道何時停止搜索列表的末尾。 我不確定二分搜索算法對兩個鍵值是否有意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.