- 1、JAVA中按原順序遍歷JSONObject
- 2、Java實現JSON多層遍歷
- 3、JAVA中遍歷JSONObject不能按原順序遍歷
- 4、請問怎樣用Java語言遍歷json對象,得到對象中的某個集合中的值?
正常的玩法應該是這樣, 因為 ObjectMapper 有各種配置, 可以更好的實現轉換, 比如 解析數據順序, 忽略錯誤字段 等等 高端大氣上檔次的東西, 你的方法已經被時代淘汰了。
ObjectMapper objectMapper = new ObjectMapper();
Map map = objectMapper.readValue(resultStr,LinkedHashMap.class);
JSONObject jsonObject = new JSONObject(s);
然後用Iterator迭代器遍歷取值,建議用反射機制解析到封裝好的對象中
JSONObject jsonObject = new JSONObject(jsonString);
Iterator iterator = jsonObject.keys();while(iterator.hasNext()){
key = (String) iterator.next();
value = jsonObject.getString(key);
}
這個估計沒辦法,json本來就是無序的。我來試一下,沒遇到這種情況。
可以重寫原碼,不過不推薦,如下:
要使輸出是有序的,可以用LinkedHashMap來替換HashMap。
修改org.json.JSONObject的構造函數,
public JSONObject() {
this.map = new LinkedHashMap(); //new HashMap();
}
可能會對JSON 函數的執行效率有所影響。
JSONObject jsonObject = new JSONObject(s);
然後用Iterator迭代器遍歷取值,建議用反射機制解析到封裝好的對象中
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/126220.html