Android JSONArray.remove ()报错

服务端返回数据时,多返回了很多不需要的东西,而且跟以前的字段还冲突(原本是一个放数组的字段,在一些不规则的返回值里面,可能某个item的数组就变成了string,最可恨的还是后台解决问题太慢了。为了不影响测试,只好自己手动写代码删除,等后台改好了再删除)不然fastjson解析就直接崩溃了。所以在加载之前,尝试使用jsonarray删掉一些能引起冲突的。

在得到一个jsonArray对象的时候,根据判断条件调用jsonArray.remove后,编译出错,错误提示android NoSuchMethodError: org.json.JSONArray.remove,网上解释说是api版本太低,我是在6.0下编译,模拟器是4.0的,觉得有这种可能。于是就治好重新创建一个jsonarray,然后把符合条件的都赋值给它,然后把它返回出去。

贴上解析方法

  public JSONArray parseoldData(JSONArray array){
        JSONArray mJsonArray  = new JSONArray();
        for(int i=0;i<array.length();i++){
            try
            {   //项目逻辑判断
                JSONObject obj=array.getJSONObject(i);
                if(obj.has("object_type")){
                    if(obj.getString("object_type").equals("5")){
                        mJsonArray.put(obj);
                    }
                }
            }catch (Exception e){
                e.printStackTrace();
            }
        }
        return mJsonArray;
    }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值