Java/Android 各类型数据构造和各类型数据解析
注意:HashMap是无序集合。
1.如何构造/解析{“key”:“value”,“key”:“value”,“key”:“value”}jsonString
构造数据:
Map<String, String> map = new HashMap<>();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
map.put("key4", "value4");
String jsonStr = new Gson().toJson(map);
解析数据:
1)json解析
2)fastjson解析
3)Gson解析
4)遍历key值解析
//json解析
try {
org.json.JSONObject object = new org.json.JSONObject(jsonStr);
Log.e(TAG, "json:"+ object.get("key1") + object.get("key2"));
} catch (JSONException e) {
throw new RuntimeException(e);
}
//fastjson解析
JSONObject jsonObject = JSON.parseObject(jsonStr);
Log.e(TAG, "fastjson:"+ jsonObject.get("key1") + jsonObject.get("key2"));
//Gson解析
Bean b = new Gson().fromJson(jsonStr, Bean.class);
Log.e(TAG, "Gson:"+ b.key1 + b.key2);
//遍历所有key及value,会乱序(不推荐)
JSONObject objAll = JSON.parseObject(jsonStr);
StringBuilder builder = new StringBuilder();
for (Map.Entry<String, Object> stringObjectEntry : objAll.entrySet()) {
String key = stringObjectEntry.getKey();
Object value = stringObjectEntry.getValue();
builder.append(key + "----" + value + "\n");
}
Log.e(TAG, "遍历所有key及value:" + builder);
//遍历所有key及v