string转JSONObject遍历多层找到key的value

string转JSONObject遍历多层找到key的value先上代码packagecom.zhph;/***@Description:*@Author:xuhaibo*@Date:${Date}*@ModifiedBy:*/importnet.sf.json.JSONArray;importnet.sf.json.JSONObject;importjava.util.Iterator;/****@compa

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

先上代码

package com.zhph;

/** * @Description: * @Author:xuhaibo * @Date:${Date} * @Modified By: */
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import java.util.Iterator;

/** * * @company * @author superboo * @version 3.0 * @date 2014-5-21 上午09:45:51 */
public class JsonRaws { 
   
    public String getJsonStr1() {
        String jsonStr = "{\"id\":\"1ui2kdic9\",\"j1\":{\"dd\":\"dd\",\"uu\":\"uu\"},\"j2\":{\"33\":\"33\",\"66\":\"66\",\"j22\":{\"00\":0}},\"name\":\"110\"}";
        return jsonStr;
    }
    public String getJsonStr2() {
        String jsonStr = "{\"id\":\"1ui2kdic9\",\"j1\":{\"dd\":\"dd\",\"uu\":\"uu\"},\"j2\":{\"33\":\"33\",\"66\":\"66\",\"j22\":{\"j0\":0},\"j23\":{\"00\":0}},\"name\":\"110\"}";
        return jsonStr;
    }
    @SuppressWarnings("rawtypes")
    public void  analysisJson(Object objJson){
        //如果obj为json数组
        if(objJson instanceof JSONArray){
            JSONArray objArray = (JSONArray)objJson;
            for (int i = 0; i < objArray.length(); i++) {
                analysisJson(objArray.get(i));
            }
        }
        //如果为json对象
        else if(objJson instanceof JSONObject){
            JSONObject jsonObject = (JSONObject)objJson;
            Iterator it = jsonObject.keys();
            while(it.hasNext()){
                String key = it.next().toString();
                Object object = jsonObject.get(key);
                //如果得到的是数组
                if(object instanceof JSONArray){
                    JSONArray objArray = (JSONArray)object;
                    analysisJson(objArray);
                }
                //如果key中是一个json对象
                else if(object instanceof JSONObject){
                    analysisJson((JSONObject)object);
                }
                //如果key中是其他
                else{
                    if (key.equals("33")) {
                        System.out.println("[" + key + "]:" + object.toString() + " ");
                    }
                }
            }
        }
    }
    public static void main(String[] args) {
        JsonRaws jw = new JsonRaws();
        JSONObject jsonObject = JSONObject.fromObject(jw.getJsonStr1());
        jw.analysisJson(jsonObject);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172474.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【Java面试】第一章:P5级面试

    HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们…

    2022年4月7日
    40
  • Idea激活码最新教程2020.2.1版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2020.2.1版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2020 2 1 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2020 2 1 成功激活

    2025年5月23日
    0
  • saxreader java_SAXReader saxReader = new SAXReader();来解析xml文件

    saxreader java_SAXReader saxReader = new SAXReader();来解析xml文件使用SAXReader需要导入dom4j-full.jar包。dom4j是一个Java的XMLAPI,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的JavaXMLAPI,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。/***解析XML文件,生成List*@paramfilePath–xm…

    2022年6月17日
    52
  • django drf_django 消息队列

    django drf_django 消息队列前言我们上篇文章使用到了Serializer类,可能有小伙伴说太过复杂,那么本篇就为大家带来更加简便的序列化类ModelSerializerModelSerializer先来看下ModelSer

    2022年7月31日
    5
  • InetAddress 解析

    InetAddress 解析IP地址分为IPv4和IPv6。IPv44字节长的ip称为IPv4.目前大部分ip都是IPv4。IPv4地址一般写为四哥无符号的字节,每个字节范围从0到255,最高字节在前面。为方便人们查看,各字节用点号分割。例如:192.168.1.100.这称为点分四段格式。IPv616字节长的ip成为IPv6.IPv6地址通常些微冒号分割的8个区块,每个区块4个十六进制数字。例如:2400:c

    2022年6月23日
    30
  • MSAgent 详细解说(上)「建议收藏」

    MSAgent 详细解说(上)「建议收藏」转:http://www.blueidea.com/tech/web/2004/1643.asp 作者windy_sk 邮箱:windy_sk@126.com下面是原文:本文完全原创,所有参考都是msdn.microsoft.com/library/en-us/msagent/agentstartpage_7gdh.asp引子:本来两年前就打算写了,结果拖了这么长时间,近日看到有朋友问及…

    2022年4月19日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号