`
一.九---HMK
  • 浏览: 14319 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

map遍历jsonarray操作

 
阅读更多

JSONArray ja = new JSONArray();

JSONObject jo1 = new JSONObject();

jo1.put("code", "1");

jo1.put("name", "呵呵");

jo1.put("box_code", "1111");

jo1.put("time", "2016");

ja.add(jo1);

JSONObject jo2 = new JSONObject();

jo2.put("code", "2");

jo2.put("name", "史上");

jo2.put("box_code", "2222");

jo2.put("time", "2015");

ja.add(jo2);

JSONObject jo3 = new JSONObject();

jo3.put("code", "3");

jo3.put("name", "方法");

jo3.put("box_code", "3333");

jo3.put("time", "2014");

ja.add(jo3);

JSONObject jo4 = new JSONObject();

jo4.put("code", "4");

jo4.put("name", "呵呵");

jo4.put("box_code", "4444");

jo4.put("time", "2016");

ja.add(jo4);

JSONObject jo5 = new JSONObject();

jo5.put("code", "5");

jo5.put("name", "速冻");

jo5.put("box_code", "5555");

jo5.put("time", "2015");

ja.add(jo5);

System.out.println(ja);

//ja : [{"code":"1","name":"呵呵","box_code":"1111","time":"2016"},{"code":"2","name":"史上","box_code":"2222","time":"2015"},{"code":"3","name":"方法","box_code":"3333","time":"2014"},{"code":"4","name":"呵呵","box_code":"4444","time":"2016"},{"code":"5","name":"速冻","box_code":"5555","time":"2015"}]

 

Map<String, JSONArray> map = new HashMap<String, JSONArray>();

for (Object object : ja) {

  JSONObject jsonObject = (JSONObject) object;

  String time = (String) jsonObject.get("time");

  JSONObject jo = new JSONObject();

  jo.put("code", (String) jsonObject.get("code"));

  jo.put("box_code", (String) jsonObject.get("box_code"));

  if (map.containsKey(time)) {

    JSONArray ja1 = map.get(time);

    ja1.add(jo);

  } else {

    JSONArray ja2 = new JSONArray();

    ja2.add(jo);

    map.put(time, ja2);

  }

}

Set<Entry<String, JSONArray>> entrySet = map.entrySet();

JSONArray jsonArray = new JSONArray();

 

for (Entry<String, JSONArray> entry : entrySet) {

  JSONObject jsonObject = new JSONObject();

  jsonObject.put("time", entry.getKey());

  jsonObject.put("name", "谁谁");

  jsonObject.put("vos", String.valueOf(entry.getValue()));

  jsonArray.add(jsonObject);

}

System.out.println(jsonArray.toString());

//jsonArray : [{"time":"2016","name":"谁谁","vos":[{"code":"1","name":"呵呵","box_code":"1111"},{"code":"4","name":"呵呵","box_code":"4444"}]},{"time":"2015","name":"谁谁","vos":[{"code":"2","name":"史上","box_code":"2222"},{"code":"5","name":"速冻","box_code":"5555"}]},{"time":"2014","name":"谁谁","vos":[{"code":"3","name":"方法","box_code":"3333"}]}]

}

 

 

 

分享到:
评论

相关推荐

    JSONArray解析包

    `JSONArray`提供了一系列的方法来操作和遍历数组,包括: - `get(int index)`:获取指定索引处的元素。 - `getString(int index)`:获取指定索引处的元素并将其作为字符串返回。 - `getJSONObject(int index)`:...

    JSONArray和Gson的jar

    在Java中,可以使用org.json库中的JSONArray类来创建和操作JSONArray对象。例如,你可以创建一个JSONArray,添加元素,读取元素,甚至遍历整个数组。 然后,我们来看Gson库。Gson库允许开发人员将Java对象序列化为...

    JSONArray_JSON_

    当我们提到"JSONArray_JSON_",我们可以理解这是一个关于JSON数组的讨论,可能涉及到如何创建、操作和解析JSON数组。 在JSON中,数组是有序的值集合,可以包含其他JSON对象、数组、字符串、数字、布尔值或null。一...

    Java遍历json字符串取值的实例

    在给出的示例代码中,我们首先将JSON字符串解析为JSONArray对象,然后通过遍历JSONArray中的每一项,将其强转为JSONObject对象。之后,就可以利用JSONObject提供的`getInteger`和`getString`等方法来获取我们感兴趣...

    JSONObject和JSONArray使用手册.pdf

    List接口的实现类,如ArrayList和LinkedList,都实现了Iterator接口,因此可以使用迭代器遍历和操作列表中的元素。在ArrayListTest示例中,我们看到了如何创建一个ArrayList,添加元素,以及获取迭代器进行遍历的...

    js获取通过ajax返回的map型的JSONArray的方法

    在JavaScript中,`Map` 和 `JSONArray` 是两种不同的数据结构。`Map` 是ES6引入的一种新的数据结构,它类似于对象,也是键值对的集合,但“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。而 `...

    浅析Java中JSONObject和JSONArray使用

    而处理JSONObject和JSONArray时,需要注意的是,遍历JSONObject时使用的是keys()方法获取键的迭代器,遍历JSONArray时使用的是普通的迭代器。 最后,代码示例展示了JSONObject和JSONArray在真实环境下的应用,如...

    List转换为List

    本知识点重点讲解将List转换为List&lt;Map&gt;的过程,这在进行Web开发、数据处理以及与前端交互等场景中非常常见。同时,也会涉及List转换为List及list转换为JsonArray的内容。 ### List转换为List&lt;Map&gt; 在Java中,Bean...

    json 转为map 适合java

    然后,我们使用 for 循环遍历 JSONObject 对象的键值对,如果值是 JSONArray,我们将其转换为 List&lt;Map, Object&gt;&gt;,否则,我们直接将其添加到 map 对象中。 四、使用场景 将 json 转换为 map 的方法广泛应用于以下...

    主要用于操作json的工具JAR

    要将JSONArray转换回List,可以遍历JSONArray的元素,并根据元素类型进行相应的转换。如果元素是JSON对象,可以将其转换为Map,然后添加到List中;如果是基本数据类型,可以直接添加: ```java import ...

    JSONObject和JSONArray对象的创建方法

    **操作JSONObject和JSONArray** 这两个类提供了丰富的API来操作JSON数据。例如,你可以获取或设置键值,删除键,检查键是否存在,以及遍历对象或数组。对于`JSONObject`,可以使用`get()`、`opt()`、`put()`和`...

    Java读取本地json文件及相应处理方法

    在遍历JSONArray时,我们填充了名为btnMap的Map对象,这个Map将模块名映射到其对应的按钮列表。 在实际应用中,通过上述步骤,可以将存储在本地的JSON文件读取到Java程序中,并进行相应的业务处理。需要注意的是,...

    JSON后台相互转换.pdf

    在 getList4Json() 方法中,我们使用 JSONArray.fromObject() 方法将 json 对象集合表达式转换为 JSONArray 对象,然后使用 Iterator 对象来遍历 JSONArray 对象的元素,并将其存储到 List 对象中。 本资源提供了...

    Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在

    1.jquery grep()筛选遍历数组(可以得到反转的数组) // 1.jquery grep()筛选遍历数组(可以得到反转的数组) var array = [1,5,9,3,12,4,48,98,4,75,2,10,11]; var filterArray = $.grep(array,(currentValue) =&gt; { ...

    json手动转map和list1

    如果值是一个`JSONArray`,则递归调用`parseJSON2Map()`,将JSON数组转换为List&lt;Map&gt;并添加到Map中;否则,直接将值添加到Map中。 8. **getListByUrl()方法**: 此方法通过指定的URL获取JSON数据,首先创建一个URL...

    js实现json数组分组合并操作示例

    在JavaScript编程中,...综上,本示例展示了JavaScript处理JSON数组的分组合并操作,涉及到的基本概念包括数组遍历、对象属性访问、哈希映射以及数组操作。了解这些知识点有助于提升在实际项目中处理JSON数据的能力。

    java处理JSON数据

    2. 遍历JSONArray ```java JSONArray jsonArray = new JSONArray(jsonString); for (int i = 0; i &lt; jsonArray.length(); i++) { Object item = jsonArray.get(i); // 处理每个元素 } ``` 六、序列化和反...

    httpclient 请求http数据,json转map的实例

    3. 遍历JSONArray,将每个元素(也是一个JSONObject)转换为Map。 4. 使用JSONObject的keys()方法获取所有键,然后遍历这些键,将键值对添加到List中。 5. 最后,将键与对应的值列表存入Map,并返回该Map。 整个...

    Jackson将json string转为Object,org.json读取json数组的实例

    之后,就可以利用JSONArray对象提供的各种方法来遍历数组或访问数组中的具体数据。 在上述代码片段中,readJsonArray函数的具体实现并未展示,但它很可能是对org.json库的JSONArray类的封装,使得可以将JSON字符串...

    json转为list 涉及 java springboot

    接下来,该方法遍历 JSONArray 并将每个元素转换为 Map: ```java Iterator&lt;JSONObject&gt; it = jsonArr.iterator(); while(it.hasNext()){ JSONObject json2 = it.next(); list.add(parseJSON2Map(json2.toString()...

Global site tag (gtag.js) - Google Analytics