private static void iterator(JsonObject jsonObject) { ???for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) { ???????JsonElement value = entry.getValue(); ???????if (value.isJsonArray()) { ???????????JsonArray jsonArray = value.getAsJsonArray(); ???????????// 数组长度为0时将其处理,防止Gson转换异常 ???????????if (jsonArray.size() == 0) { ???????????????entry.setValue(null); ???????????} else { ???????????????for (JsonElement o : jsonArray) { ???????????????????JsonObject asJsonObject = o.getAsJsonObject(); ???????????????????iterator(asJsonObject); ???????????????} ???????????} ???????} ???????if (value.isJsonObject()) { ???????????JsonObject asJsonObject = value.getAsJsonObject(); ???????????iterator(asJsonObject); ???????} ???}}
Gson的JsonObject键值对遍历并做相应处理
原文地址:https://blog.51cto.com/12165865/2369184