json解析样例 获取key value

  <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.44</version>
  </dependency>
public static List<String> parseApiResult(String result) {
       if (StringUtils.isBlank(result)) {
          return null;
       }
       if (result instanceof String) {
            result = String.valueOf(result);
        } else {
            result = JSON.toJSONString(result);
      }
    JSONObject jsonResult = JSON.parseObject(result);
    String data = jsonResult.getString("code");
    if (StringUtils.isBlank(data) || !"200".equals(data)) {
        return null;
    }
    
    Object value = jsonResult.get("value");
    if (null == value) {
        return null;
    }
    List<String> menuList = Lists.newArrayList();
    if (value instanceof JSONArray) {
        JSONArray jsonArray = jsonResult.getJSONArray("value");
        for(int i=0; i<jsonArray.size(); i++){
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            Iterator iter = jsonObject.entrySet().iterator();
            while(iter.hasNext()){
                Map.Entry entry = (Map.Entry) iter.next();
                //entry.getValue().toString()
                menuList.add(entry.getKey().toString());
            }
        }
    }else {
        Map maps = (Map) JSON.parse(value.toString());
        for (Object map : maps.entrySet()) {
            //(Map.Entry) map).getValue()  stream循环也行
            menuList.add(((Map.Entry) map).getKey().toString());
        }
    }
    return menuList;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值