/**
* 1.根据接收到的JSON字符串来解析字符串中所包含的数据和数据对象
*/
System.out.println("1.根据接收到的JSON字符串来解析字符串中所包含的数据和数据对象");
// 接收到的JSON字符串
String result = "[{\"username\": \"your name\", \"user_json\": {\"username\": \"your name\", \"nickname\": \"your nickname\"}}]";
// 根据字符串生成JSON对象
JSONArray json = new JSONArray(result);
JSONObject jsonObject = json.optJSONObject(0);
// 获取数据项
String username = jsonObject.getString("username");
// 获取数据对象
JSONObject user = jsonObject.getJSONObject("user_json");
String nickname = user.getString("nickname"); System.out.println(username);
System.out.println(nickname); /**
* 2.JSON对象转换为String字符串
*/
System.out.println("2.JSON对象转换为String字符串");
// 创建JSONObject对象
JSONObject jsonObj = new JSONObject(); // 向json中添加数据
jsonObj.put("username", "wanglihong");
jsonObj.put("height", 12.5);
jsonObj.put("age", 24); // 创建JSONArray数组,并将json添加到数组
JSONArray array = new JSONArray();
array.put(jsonObj);
// 转换为字符串
String jsonStr = array.toString();
System.out.println(jsonStr); /**
* 3. 集合转换为JSONArray对象
*/
System.out.println("3. 集合转换为JSONArray对象");
// 初始化ArrayList集合并添加数据
List<String> list = new ArrayList<String>();
list.add("username");
list.add("age");
list.add("sex"); // 初始化HashMap集合并添加数组
Map<String,String> map = new HashMap<String,String>();
map.put("bookname", "CSS3实战");
map.put("price", "69.0"); // 初始化JSONArray对象,并添加数据
JSONArray jsonArray = new JSONArray();
jsonArray.put(list);
jsonArray.put(map);
System.out.println(jsonArray.toString());

  

导入的包名:
import org.json.JSONArray;
import org.json.JSONObject;

导入的依赖:
<dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20160810</version>
</dependency>

输出结果:
1.根据接收到的JSON字符串来解析字符串中所包含的数据和数据对象
your name
your nickname
2.JSON对象转换为String字符串
[{"age":24,"username":"wanglihong","height":12.5}]
3. 集合转换为JSONArray对象
[["username","age","sex"],{"price":"69.0","bookname":"CSS3实战"}]

JAVA基础-JSON的更多相关文章

  1. Java基础——JSON

    一.JSON定义 在百度百科中的解释:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript的一个子集. JSON采用完全独立于语言的 ...

  2. Java基础-处理json字符串解析案例

    Java基础-处理json字符串解析案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 作为一名开发人员,想必大家或多或少都有接触到XML文件,XML全称为“extensible ...

  3. 给Java新手的一些建议----Java知识点归纳(Java基础部分)

    写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给 ...

  4. 如何学习java?Java基础知识点分享

    面对未知的行业,人们的第一反应应该是:拒绝踏入.因为学习真的是一个痛苦的过程.想要真正了解一个行业,熟知一个行业,并熟练掌握某一技术,是真的需要时间和精力的.在学习Java基础知识期间,千锋小编疯狂为 ...

  5. java处理json与对象的转化 递归

    整个类是一个case,总结了我在使用java处理json的时候遇到的问题,还有级联关系的对象如何遍历,json和对象之间的转换! 对于对象json转换中遇到的问题我参考了一篇博客,http://blo ...

  6. 剑指Offer——知识点储备-Java基础

    剑指Offer--知识点储备-Java基础 网址来源: http://www.nowcoder.com/discuss/5949?type=0&order=0&pos=4&pa ...

  7. Java JWT: JSON Web Token

    Java JWT: JSON Web Token for Java and Android JJWT aims to be the easiest to use and understand libr ...

  8. java基础-3

    java基础-3 API ​ Application Programming Interfaces --- 应用程序接口 Object 顶级父类 Bin --- 二进制 Oct --- 八进制 Dec ...

  9. Java基础96 ajax技术的使用

    本文知识点(目录): 1.ajax的概念   2.使用ajax技术获取服务端的数据_实例   3.使用ajax技术检查用户名是否已存在_实例   4.使用ajax技术验证登录页面的用户名和密码_实例 ...

  10. Java基础组件快速入门

    最近需要上线很多新的JAVA项目,然而很多JAVA的相关库都不太熟悉,项目实现起来遇到了不小阻力,熬了好几天夜.现在手头的工作基本完成了,因此打算好好来归纳下java的相关工具库,将来需要借助你们,好 ...

随机推荐

  1. OC中Foundation框架之NSArray、NSMutableArray

    NSArray概述 NSArray是OC中的数组类 NSArray特点 )只能存放任意OC对象,并且是有顺序的 )不能存放非OC对象,比如int/float/double/char/enum/stru ...

  2. 深入浅出理解yield

    索引 转载部分内容来自:http://www.jianshu.com/p/d09778f4e055 [彻底理解yield] http://blog.csdn.net/haskei/article/de ...

  3. VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启)

    VopSdk一个高逼格微信公众号开发SDK(源码下载) VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启) 针对第一版,我们搞了第二版本,老规矩先定个目标. 一 我们的目标 a.移 ...

  4. 学习笔记:javascript内置对象:数学对象

    1.数学对象 -Math 2.对象常用属性 3.常用函数 4.对数值类型数据保留小数的函数

  5. TCP协议详解---上

    TCP头格式 注意以下几点: TCP的包是没有IP地址的,那是IP层上的事.但是有源端口和目标端口. 一个TCP连接需要四个元组来表示是同一个连接(src_ip, src_port, dst_ip, ...

  6. Linux设备中的并发控制

    一.自旋锁1.定义自旋锁:spinlock_t lock2.初始化自旋锁:spin_lock_init(lock)3.获得自旋锁:spin_lock(lock)4.释放自旋锁:spin_unlock( ...

  7. 零售业山重水复,全景行柳暗花明——VR全景智慧城市

    对今天的中国来说,寻找经济转型的突破口,寻找经济权力的新霸主,零售业应该当仁不让. 零售业正在经历一场脱胎换骨的改造.一方面零售额达到前所未有的水平,另一方面,传统零售商也面临诸多挑战,其中之一,便是 ...

  8. Day2-字符编码转换

    1.在python2默认编码是ASCII, python3里默认是unicode 2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so ...

  9. Java Date Classes

    References: [1] http://tutorials.jenkov.com/java-date-time/index.html [2] https://docs.oracle.com/ja ...

  10. 《Android进阶》之第三篇 深入理解android的消息处理机制

    Android 异步消息处理机制 让你深入理解 Looper.Handler.Message三者关系 android的消息处理机制(图+源码分析)——Looper,Handler,Message an ...