虚位以待(AD)
虚位以待(AD)
首页 > 软件编程 > Java编程 > java 将jsonarray 转化为对应键值的jsonobject方法

java 将jsonarray 转化为对应键值的jsonobject方法
类别:Java编程   作者:码皇   来源:互联网   点击:

下面小编就为大家分享一篇java 将jsonarray 转化为对应键值的jsonobject方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

如:

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

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

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

    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:

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

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

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

案例三:

    原数据:[{
    "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方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

  • JSON字符串转换JSONObject和JSONArray的方法
  • 浅析Java中JSONObject和JSONArray使用
  • JSONObject与JSONArray的使用
  • 使用JSONObject生成和解析json的方法
  • java json字符串转JSONObject和JSONArray以及取值的实例
  • Java中JSONObject与JSONArray的使用区别详解
相关热词搜索: java jsonarray jsonobject