zoukankan      html  css  js  c++  java
  • 解析 对象列表的JSON数据 []、[{}] 中括号

    例如数据格式为
    {"data":[{"uid":"FFFF0233","name":"zhangsan"},{"uid":"FFFF0234","name":"lisi"}],"errmsg":"","status":0,"ts":1567761594}

    可以分为两部分外部和内部,内部是[{"uid":"FFFF0233","name":"zhangsan"},{"uid":"FFFF0234","name":"lisi"}],在数据转化为json之前,这个内部其实是一个List<对象>
    可以把{"uid":"FFFF0233","name":"zhangsan"},{"uid":"FFFF0234","name":"lisi"} 看成两个对象,第一对象{"uid":"FFFF0233","name":"zhangsan"},而这对象有两个属性。

    1.先解析外部
    JsonObject obj = new JsonParser().parse(json数据).getAsJsonObject();
    obj.get("data") 的值为 [{"uid":"FFFF0233","name":"zhangsan"},{"uid":"FFFF0234","name":"lisi"}]
    以此类推
    obj.get("errmsg")  的值为  ""

    2.解析内部
    BaseStationApJson baSAp = new Gson().fromJson(obj,BaseStationApJson.class);
    for (Map map : baSAp.getData()) {
    Test test = new Test("" + map.get("uid")); //到这一步 map.get("uid") 就能获取到uid的值了 Test类是测试需要,完全可以去掉
    list.add(test);
    }
    例如BaseStationApJson
    public class BaseStationApJson {
    private List<Map> data;
    private String errmsg;
    private int status;
    private Long ts;
     

     
     
  • 相关阅读:
    java方法参数传值传引用的一点看法
    Oracle触发器介绍
    CASE WHEN
    group by ,order by ,having
    Java中使用正则表达式
    Oracle 9i 分析函数参考手册
    ORACLE round 与 trunc 的区别
    oracle的默认表名长度(30)
    order by 使用索引的情况
    解析oracle的ROWNUM 作者: chen_liang
  • 原文地址:https://www.cnblogs.com/riyueqian/p/11477084.html
Copyright © 2011-2022 走看看