动态解析包含JSONObject的JSONArray

     首先给定的JSON格式为:
  
callBackResult={"contentType":"OBJECT","entity":{"FUN_STORE_RECALLUSER":[{"total":3469}]},"elapsed":357}
  需求是取出total对应的数值“3469”,那如何实现呢?
   1.构建一个普通的Java类
public class ReCallUser {

        private String key;

        private String value;

        public ReCallUser() {

        }

        public ReCallUser(String key, String value) {
            this.key = key;
            this.value = value;
        }

        public String getKey() {
            return key;
        }

        public void setKey(String key) {
            this.key = key;
        }

        public String  getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }
    }
2.使用JSON库去解析
 JSONObject jsonObject = new JSONObject(callBackResult);
        JSONArray jsonArray = jsonObject.getJSONObject("entity").getJSONArray(String.valueOf(FUN_STORE_RECALLUSER));
        List<ReCallUser> reCallUsers=new ArrayList<>();
        for (int i = 0; i < jsonArray.length(); i++) {
            ReCallUser reCallUser=new ReCallUser();
            jsonObject = jsonArray.getJSONObject(i);
            reCallUser.setKey("macList");
            reCallUser.setValue(jsonObject.getString("macList"));
            reCallUsers.add(reCallUser);
            reCallUser=null;
        }

        for (ReCallUser user:reCallUsers
             ) {
            System.out.println("----------------");
            System.out.println(user.getKey()+","+user.getValue());
            System.out.println("----------------");
        }
注:
import org.json.JSONArray;
import org.json.JSONObject;
不是阿里巴巴或者其它库中json

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值