码迷,mamicode.com
首页 > Web开发 > 详细

JSON循环遍历解析

时间:2017-12-28 11:47:44      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:bsp   get   set   void   value   next   递归   system   gpo   

使用递归方式遍历JSON,解析JSON用的是:net.sf.json

 1  @Test
 2     public void test() {
 3         String json = "{}";
 4         test2((Map) JSONObject.fromObject(json));
 5     }
 6 
 7     private void test1(Map.Entry<String, Object> entry) {
 8         if (entry.getValue() instanceof JSONArray) {
 9             System.out.println("key=" + entry.getKey());
10             List<Map<String, Object>> list = (List<Map<String, Object>>) entry.getValue();
11             for (Map<String, Object> map : list) {
12                 test2(map);
13             }
14         } else if (entry.getValue() instanceof JSONObject) {
15             System.out.println("key=" + entry.getKey());
16             Map jsonMap = (Map) JSONObject.fromObject(entry.getValue());
17             test2(jsonMap);
18         } else {
19             System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
20         }
21     }
22 
23     private void test2(Map map) {
24         Iterator<Map.Entry<String, Object>> it = map.entrySet().iterator();
25         while (it.hasNext()) {
26             Map.Entry<String, Object> en = it.next();
27             test1(en);
28         }
29     }

 

JSON循环遍历解析

标签:bsp   get   set   void   value   next   递归   system   gpo   

原文地址:https://www.cnblogs.com/xu-xiao/p/8133910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!