JSONArray和JSONObject的转换

JSONArray和JSONObject的转换在项目日常开发中常常会遇到JSONArray和JSONObject的转换,很多公司刚入职的小萌新会卡在这里,今天和大家分享一下,有更厉害的大佬也可以指教一下!话不多说上硬菜publicstaticvoidmain(String[]args){Stringstr=“{“took”:26,“tid_out”:fale,”_shards”:{“total”:160,“succssf…

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

在项目日常开发中常常会遇到JSONArray和JSONObject的转换,很多公司刚入职的小萌新会卡在这里,今天和大家分享一下,有更厉害的大佬也可以指教一下!话不多说上硬菜
在这里插入图片描述

public static void main(String[] args) { 
   
        String str = "{\"took\":26,\"tid_out\":fale,\"_shards\":{\"total\":160,\"succssful\":10,\"faied\":0},\"hits\":{\"total\":302,\"max_score\":0.0,\"hits\":[]},\"aggations\":{\"agg\":{\"doc_count_error_uper_bound\":0,\"sum_oer_doc_count\":0,\"buets\":[{\"key\":\"http\",\"doc_count\":136},{\"key\":\"web_servers\",\"doc_count\":163},{\"key\":\"dns\",\"doc_count\":235},{\"key\":\"ninx\",\"doc_count\":303},{\"key\":\"nginx服务器\",\"doc_count\":509},{\"key\":\"NLnet bs ND\",\"doc_count\":555}]}}}";
        JSONObject jsonObject = JSONObject.fromObject(str);
// System.out.println(jsonObject);
        String aggregations= jsonObject.getString("aggregations");
// System.out.println(aggregations);
            JSONObject jsonObject1 = JSONObject.fromObject(aggregations);
            String agg = jsonObject1.getString("agg");
// System.out.println(agg);
            JSONObject jsonObject2 = JSONObject.fromObject(agg);
            String buckets =jsonObject2.getString("buckets");
// System.out.println(buckets);
            JSONArray jsonArray =JSONArray.fromObject(buckets);
// System.out.println(jsonArray);
        for (int i=0;i<jsonArray.size();i++){ 
   
            JSONObject jsonObject3 = jsonArray.getJSONObject(i);
            System.out.println(jsonObject3);
            String key = jsonObject3.getString("key");
            String doc_count = jsonObject3.getString("doc_count");
            System.out.println(key+"------"+doc_count);
        }
    }

这里的json转换需要在配合文件中引入这个
在这里插入图片描述

<dependency>
    <groupId>net.sf.json-lib</groupId>
    <artifactId>json-lib</artifactId>
    <version>2.4</version>
    <classifier>jdk15</classifier>
</dependency>

导入包的路径分别是:
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

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

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

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


相关推荐

  • android实现免费短信验证

    android实现免费短信验证代码地址如下:http://www.demodashi.com/demo/12541.html前言获取短信验证码的的第三方很多,今天介绍一个获取短信验证码的demo,它有以下优势1.短信到达率

    2022年7月1日
    24
  • allegro转换成pads_图片转换成pdf格式

    allegro转换成pads_图片转换成pdf格式Allegro转PADS格式硬件技术类2009-06-1316:31:11阅读2114评论3字号:大中小订阅Allegro转PADS格式:有一种比较简单的方式,需要借助CAM350Gr]\E1.allegro导出ODB++档案2.CAM350导入ODB++>EC3.CAM350导出PowerPCB4.0ascm用此种方…

    2025年5月24日
    0
  • 用户访问路径分析_访问路径是什么意思

    用户访问路径分析_访问路径是什么意思1971年,在英国伦敦召开的国际园林艺术研讨会上,迪斯尼乐园的路径设计获得世界最佳设计奖。可是,你知道吗?这条路径却并非出自某个设计大师之手,完全是游人"自行设计"(实际就…

    2022年8月24日
    5
  • JMESPath_正则表达式语法

    JMESPath_正则表达式语法前言JMESPath是JSON的查询语言。您可以从JSON文档中提取和转换元素官方文档:https://jmespath.org/tutorial.html基本表达式JMESPath用的最多的

    2022年7月31日
    3
  • 常用dos命令(八)–COPY命令

    常用dos命令(八)–COPY命令今天的是copy(复制)命令,说起这个命令,也许你没使用过这个命令,但是平常生活与工作中总会长期用到ctrl+c和ctrl+v这两个功能吧。下面是几个小例子:1、将桌面的hello.txt文件复制到d盘:c:\Users\DT236\Desktop>copyhello.txtd:2、将多个文件合并在一个文件里面:c:\Users\DT236\Desktop>copyh

    2022年7月18日
    22
  • c# HJ212协议组包

    c# HJ212协议组包c#关于HJ212协议组包今天突然想起好久没有登过博客了又将近两年没有更新怪我太懒散了。。。工作中学习到的很多但也很容易忘记用过的东西某天可能想再用的时候却想不起来了或者找不到了只能挠头~~好了进入正题我在工作中关于HJ212协议这块用到的还是很多的今天来写一写在c#中HJ212协议如何组包以及有了报文内容如何转换为完整报文:先放一张转换为完整报文的成果图:以下为实际代码:publicpartialclassForm1:Form

    2022年7月25日
    25

发表回复

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

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