JAVA基础-JSON
/**
* 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的更多相关文章
- Java基础——JSON
一.JSON定义 在百度百科中的解释:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript的一个子集. JSON采用完全独立于语言的 ...
- Java基础-处理json字符串解析案例
Java基础-处理json字符串解析案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 作为一名开发人员,想必大家或多或少都有接触到XML文件,XML全称为“extensible ...
- 给Java新手的一些建议----Java知识点归纳(Java基础部分)
写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给 ...
- 如何学习java?Java基础知识点分享
面对未知的行业,人们的第一反应应该是:拒绝踏入.因为学习真的是一个痛苦的过程.想要真正了解一个行业,熟知一个行业,并熟练掌握某一技术,是真的需要时间和精力的.在学习Java基础知识期间,千锋小编疯狂为 ...
- java处理json与对象的转化 递归
整个类是一个case,总结了我在使用java处理json的时候遇到的问题,还有级联关系的对象如何遍历,json和对象之间的转换! 对于对象json转换中遇到的问题我参考了一篇博客,http://blo ...
- 剑指Offer——知识点储备-Java基础
剑指Offer--知识点储备-Java基础 网址来源: http://www.nowcoder.com/discuss/5949?type=0&order=0&pos=4&pa ...
- 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 ...
- java基础-3
java基础-3 API Application Programming Interfaces --- 应用程序接口 Object 顶级父类 Bin --- 二进制 Oct --- 八进制 Dec ...
- Java基础96 ajax技术的使用
本文知识点(目录): 1.ajax的概念 2.使用ajax技术获取服务端的数据_实例 3.使用ajax技术检查用户名是否已存在_实例 4.使用ajax技术验证登录页面的用户名和密码_实例 ...
- Java基础组件快速入门
最近需要上线很多新的JAVA项目,然而很多JAVA的相关库都不太熟悉,项目实现起来遇到了不小阻力,熬了好几天夜.现在手头的工作基本完成了,因此打算好好来归纳下java的相关工具库,将来需要借助你们,好 ...
随机推荐
- js获取一组不重复的随机数的方法
一.基本思路: 建立一个数组存放所有可以取到的值,每次从该数组中随机取走一个,放到新的数组中,直到完成. 二.实现方法 1.方法一: (1)创建一个数组arr,数组元素为所有可能出现元素的集合: (2 ...
- Qt 之 入门例程(二)
本文以 Qt 中的 QtConcurrent::run() 函数为例,介绍如何将函数运行在单独的某一个线程中. 1 QtConcurrent::run() QtConcurrent 是一个命名空间, ...
- SSH 远程执行任务
SSH 是 Linux 下进行远程连接的基本工具,但是如果仅仅用它来登录那可是太浪费啦!SSH 命令可是完成远程操作的神器啊,借助它我们可以把很多的远程操作自动化掉!下面就对 SSH 的远程操作功能进 ...
- OGNL表达式与EL表达式
一.OGNL表达式 a)什么是OGNL? OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言, 通过它简单一致的表达式语法.主要功能: ...
- Editplus配置java运行环境以及其他需求的简单设置
java配置 首先,打开"工具"(tools)选项,选择"配置自定义工具组"(英文版 是倒数第二个)然后按照上面第二幅图片来配置javac环境,其中命令一栏是j ...
- swift MBProgressHUD加载gif或者apng的动图
效果图 给MBProgressHUD添加一个分类(extension) extension MBProgressHUD { /// MBProgressHUD 显示加载gif hud方法 /// // ...
- 关于SESSION失效和关闭浏览器问题
关闭浏览器和session失效没有任何关系, session本身有一个存活时间,在tomcat中默认的是30分钟, 这也就是楼上说的不是马上失效 但和浏览器不要划等号 因为即使你浏览器一直开着,如 ...
- NodeJs的包漏洞扫描与漏洞测试攻击
一个典型的Node应用可能会有几百个,甚至上千个包依赖(大部分的依赖是间接的,即下载一个包,这个包会依赖其他的好多包),所以最终的结果是,应用程序就会像是这个样子的:
- React学习小结(三)
一.React数据的传输 1.属性和状态是react中数据传递的载体 2.属性是声明以后不允许被修改的东西 3.属性只能在组件初始化的时候声明并传入组件内部,并且在组件内部通过this.props获取 ...
- Vue2.x中的Render函数
Render函数是Vue2.x版本新增的一个函数:使用虚拟dom来渲染节点提升性能,因为它是基于JavaScript计算.通过使用createElement(h)来创建dom节点.createElem ...