gpt4 book ai didi

java 将jsonarray 转化为对应键值的jsonobject方法

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章java 将jsonarray 转化为对应键值的jsonobject方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

有时候我们再操作数据的时候,很多数据是jsonarry 格式的 。

如:

?
1
[{"name":"测试数据","id":1},{"name":"测试数据2","id":2}]

这样的格式很类型表格数据类型。但是我们要取id 为1的name 这样我们就要先变量以便了。如果需要多次操作这样的类型,显得很麻烦.

这里的数据我们可以看出id 是唯一的。那么我们可以想办法将其转为jsonobject 这样我们就很方便 根据指定id 获取 name 了.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public static JSONObject toJSONObject(JSONArray jsonArray, String key) {
     JSONObject jsonObject = new JSONObject();
     for (int i = 0; i < jsonArray.size(); i++) {
       JSONObject temp = jsonArray.getJSONObject(i);
       String[] keyValues = StringUtil.StringToArray(key);
       if (keyValues != null) {
         for (String item : keyValues) {
           String[] k = item.split(":");
           String[] keys = k[0].split("_");
           String keyName = k[0];
           if (keys.length == 2) {
             keyName = keys[0];
           }
           String jsonKeyName = temp.getString(keyName);
           if (keys.length == 2) {
             jsonKeyName += "_" + keys[1];
           }
           jsonObject.put(jsonKeyName, temp.getString(k[1]));
         }
       }
     }
     return jsonObject;
   }

这个方法就可以简单的实现,但是可能不是最好的实现方法。欢迎对其提出宝贵的建议.

这里列出各个案例 。

案例1:

?
1
2
3
4
5
6
原数据:
[{"name":"测试数据","id":1},{"name":"测试数据2","id":2}]
调用方法:
toJSONObject(jsonArray, "id:name")
结果:
{"1":"测试数据","2":"测试数据2"}

案例2:(这仅是我们自己业务需要添加上的) 。

?
1
2
3
4
5
6
原数据:
[{"name":"测试数据","id":1},{"name":"测试数据2","id":2}]
调用方法:
toJSONObject(jsonArray, "id_test:name")
结果:
{"1_test":"测试数据","2_test":"测试数据2"}

案例三:

?
1
2
3
4
5
6
原数据:
[{"no":100,"name":"测试数据","id":1,"desc":"测试描述"},{"no":101,"name":"测试数据2","id":2,"desc":"测试描述2"}]
调用方法:
toJSONObject(jsonArray, "id:name,no:desc")
结果:
{"1":"测试数据","100":"测试描述","2":"测试数据2","101":"测试描述2"}

以上这篇java 将jsonarray 转化为对应键值的jsonobject方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我.

原文链接:https://blog.csdn.net/jiangzeyin_/article/details/75035992 。

最后此篇关于java 将jsonarray 转化为对应键值的jsonobject方法的文章就讲到这里了,如果你想了解更多关于java 将jsonarray 转化为对应键值的jsonobject方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com