前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >string转JSONObject遍历多层找到key的value

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

作者头像
全栈程序员站长
发布于 2022-09-22 14:47:00
发布于 2022-09-22 14:47:00
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

先上代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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.cn/172474.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
《MySQL入门很轻松》第3章:数据库的创建与操作
在 MySQL中,数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的应用程序接口(Application Program Interface,API),用于创建、访问、管理、搜索和复制所保存的数据。 不过,也可以将数据存储在文件中,但是在文件中读写数据的速度相对较慢。所以,现在使用关系数据库管理系统(Relational Database Management System,RDBMS)来存储和管理大数据量。而MySQL 是最流行的关系数据库管理系统,尤其是在Web应用方面,MySQL可以说是最好的RDBMS应用软件之一。
炒香菇的书呆子
2022/02/14
1.5K0
《MySQL入门很轻松》第3章:数据库的创建与操作
MySQL创建数据表
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。
iOS程序应用
2023/04/17
16.1K0
软件开发入门教程网之MySQL 删除数据表
MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。
爱学iOS的小麦子
2023/01/03
4530
MySQL的连接命令
该函数有 6 个参数,在成功链接到 MySQL 后返回连接标识,失败返回 FALSE 。
菲宇
2022/12/02
1.9K0
Unix/Linux 系统及 PHP 中连接 MySQL 语法
您可以使用 MySQL 二进制方式进入到 mysql 命令提示符下来连接 MySQL 数据库,格式如下:
轩源
2024/09/29
3250
从命令提示窗口中选择MySQL数据库
在 mysql> 提示窗口中可以很简单的选择特定的数据库。你可以使用SQL命令来选择指定的数据库。
用户4988376
2021/08/17
1.1K0
MySQL 【教程一】
每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
IT茂茂
2020/03/19
1.7K0
MySQL创建数据表基础篇
CREATE TABLE table_name (column_name column_type);
iOS程序应用
2022/12/28
3.1K0
MySQL创建数据表
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。
爱学iOS的小麦子
2023/05/09
5K0
MySQL数据表
> 📒博客主页: ​​开心档博客主页​​ 🎉欢迎关注🔎点赞👍收藏⭐留言📝 📌本文由开心档原创! 📆51CTO首发时间:🌴2022年12月16日🌴 ✉️这世界很喧嚣,做自己就好! 🙏作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢! ⭐本文介绍⭐ 使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。 实例 以下是从命令行中连接mysql服务器的简单实例: [root@host]# mysql -u root -p Enter pass
爱学iOS的小麦子
2022/12/27
5.1K0
MySQL 选择数据库
在你连接到 MySQL 数据库后,可能有多个可以操作的数据库,所以你需要选择你要操作的数据库。
用户6884826
2021/07/07
1.7K0
MySQL 创建数据库
我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下:
用户1685462
2021/07/16
10.1K0
MySQL 创建数据库
我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下:
用户6884826
2021/07/07
10.4K0
phpMySQL 向数据表插入数据
INSERT INTO table_name ( field1,field2,...fieldN )
哆哆Excel
2022/10/25
3.3K0
phpMySQL 向数据表插入数据
MySQL 删除数据表
MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。
用户6884826
2021/07/07
8.7K0
MySQL 创建数据表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
用户6884826
2021/07/07
8.9K0
相关推荐
《MySQL入门很轻松》第3章:数据库的创建与操作
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档