JSONObject详解「建议收藏」

JSONObject详解「建议收藏」JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value结构),可以使用put方法给json对象添加元素。JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。maven:<dependency> <groupId>org.json</groupId> <ar…

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

JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value 结构),可以使用put方法给json对象添加元素。JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。

pom:

 <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.28</version>
        </dependency>

1.通过原生生成json数据格式。

JSONObject zhangsan = new JSONObject();
        try {
            //添加
            zhangsan.put("name", "张三");
            zhangsan.put("age", 18.4);
            zhangsan.put("birthday", "1900-20-03");
            zhangsan.put("majar", new String[] {"哈哈","嘿嘿"});
            zhangsan.put("null", null);
            zhangsan.put("house", false);
            System.out.println(zhangsan.toString());
        } catch (JSONException e) {
            e.printStackTrace();
        }

2.通过hashMap数据结构生成

     HashMap<String, Object> zhangsan = new HashMap<>();
        
        zhangsan.put("name", "张三");
        zhangsan.put("age", 18.4);
        zhangsan.put("birthday", "1900-20-03");
        zhangsan.put("majar", new String[] {"哈哈","嘿嘿"});
        zhangsan.put("null", null);
        zhangsan.put("house", false);
        System.out.println(new JSONObject(zhangsan).toString());

3.通过实体生成 

        Student student = new Student();
        student.setId(1);
        student.setAge("20");
        student.setName("张三");
        //生成json格式
        System.out.println(JSON.toJSON(student));
        //对象转成string
        String stuString = JSONObject.toJSONString(student);

4.JSON字符串转换成JSON对象

String studentString = "{\"id\":1,\"age\":2,\"name\":\"zhang\"}";

//JSON字符串转换成JSON对象
JSONObject jsonObject1 = JSONObject.parseObject(stuString);

System.out.println(jsonObject1);

5.list对象转listJson

ArrayList<Student> studentLsit = new ArrayList<>();
        Student student1 = new Student();
        student1.setId(1);
        student1.setAge("20");
        student1.setName("asdasdasd");

        studentLsit.add(student1);

        Student student2 = new Student();
        student2.setId(2);
        student2.setAge("20");
        student2.setName("aaaa:;aaa");

        studentLsit.add(student2);

        //list转json字符串
        String string = JSON.toJSON(studentLsit).toString();
        System.out.println(string);

        //json字符串转listJson格式
        JSONArray jsonArray = JSONObject.parseArray(string);

        System.out.println(jsonArray);

 

 

阿里的json很好用,还有一个谷歌Gson也不错。有兴趣的可以看一看

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

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

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


相关推荐

  • IDEA之配置SVN「建议收藏」

    IDEA之配置SVN「建议收藏」在实际公司开发的项目中,我们往往需要使用svn对特定功能模块进行版本管理,下面为IDEA配置SVN的相关步骤以及会遇到的一些问题目录一、SVN配置1.1下载SVN1.2安装SVN1.3配置SVN二、常见问题2.1.IDEA文件全部变红2.2Warning:java:源值1.5已过时2.2.1调整project版本一、SVN配置1.1下载SVNTortoiseSVN官网地址:https://tortoisesvn.net/downloads.html1.2安装SVN基本是

    2022年5月14日
    56
  • 如何退出Vi或Vim编辑器「建议收藏」

    如何退出Vi或Vim编辑器「建议收藏」Thevieditorisconfusingifyou’renotusedtoit.Ittakesasecrethandshaketoescapethisapplicationifyou’vestumbledintoit.Here’showtoquitviorvimonLinux,macOS,oranyotherUnix-…

    2022年9月30日
    3
  • 在vue中引入外部的css文件「建议收藏」

    在vue中引入外部的css文件「建议收藏」在vue中引入外部的css文件在项目的src文件下,新建一个style文件夹,存放css文件。1.全局引入将外部的css文件放到style文件下,引入外部文件只需在main.js文件中import’./style/reset.css’我引入的是清除默认样式的css文件2.局部引入&lt;stylescoped&gt;@import’../assets/ico……

    2022年10月8日
    4
  • hotumoyi吉他_木棒能做什么

    hotumoyi吉他_木棒能做什么乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过 50 个长度单位。然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度。请你设计一个程序,帮助乔治计算木棒的可能最小长度。每一节木棍的长度都用大于零的整数表示。输入格式输入包含多组数据,每组数据包括两行。第一行是一个不超过 64 的整数,表示砍断之后共有多少节木棍。第二行是截断以后,所得到的各节木棍的长度。在最后一组数据之后,是一个零。输出格式为每组数据,分别输出原始木棒的可能最小长度

    2022年8月9日
    9
  • 一个简单易用的服务器性能监控工具-easynmon

    一个简单易用的服务器性能监控工具-easynmon之前监控服务器性能的时候,一直用的是nomn,但是这个工具每次使用时必须要连接服务器并输入指令,完成后还要去服务器拿出这个结果,很不方便,直到发现了这个工具-easynmon该工具部署后可直接通过网页访问,效果如下图如何使用先从网上下载这个包,之后解压,上传到服务器的某个路径下然后cd进入该存放目录,执行chmod-R777easyNmon,给该工具赋予全权限cd进入easyNmon,执行语句nohup./easyNmon-p9000&说明:900…

    2022年5月22日
    50
  • 中缀表达式转后缀表达式(非常简单易懂)

    中缀表达式转后缀表达式(非常简单易懂)前言数据结构与算法中经常遇到中缀表达式转前缀表达式的题目 网上的教程大都很不直观 自己学的时候 也走了很多弯路 现在把一个简单易懂的算法教程分享出来 中缀转后缀举个例子 一个式子 5 20 1 3 14 5 20 1 3 14 5 20 1 3 14 如何把该式子转换成后缀表达式呢 其实就是分三步 1 按运算符优先级对所有运算符和它的运算数加括号 原本的括号不用加 2 把运算

    2025年11月21日
    2

发表回复

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

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