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的相关工具库,将来需要借助你们,好 ...
随机推荐
- ES6之"let"能替代"var"吗?
译者按: 使用let的确会比var安全很多. 原文: Why You Shouldn't Use 'var' Anymore 译者: Fundebug 为了保证可读性,本文采用意译而非直译. 我已经使 ...
- myeclipse的class文件编译设置
一,设置单个工程的class文件路径 右击工程,BulidPath——Configure Build Path
- Installing MySQL on Microsoft Windows Using a noinstall Zip Archive
这两天在自己的windows上安装了一下mySql数据库,安装使用的是5.7.18版本的 noinstall Zip Archive安装包mysql-5.7.18-win32.zip.由于5.7版本相 ...
- 浅论Javascript在汽车信号测试中的应用
起因 上周老板又给了我这个车辆工程毕业的码农一份工作: 要我写一个测试台架出来. 我先简单的分析了测试台架的几种典型的工况: 1.发送一个CAN信号,测试能否查到. 2.发送一个信号,是否能在规定时间 ...
- pod lib lint 遇到的问题
在pod lib lint(Xcode 8.3.2)校验组件是否有效的时候报了如下错误: - ERROR | [iOS] unknown: Encountered an unknown error ( ...
- springMVC---简介
SpringMVC介绍 为什么要使用springMVC? 很多应用程序的问题在于处理业务数据和显示业务数据的视图的对象之间存在紧密耦合.通常,更新业务对象的命令都是从视图本身发起的,使视图对任何业务对 ...
- 微信小程序,前端大梦想(七)
微信小程序之数据缓存实例-备忘录 数据缓存在移动端的使用是非常重要的,既可以减少用户的流量支出又可以提高程序的访问速度和用户体验.每个微信小程序都可以有自己的本地缓存,可以通过 wx.setStora ...
- python小工具:用python操作HP的Quality Center
背景是这样的:这个组的测试人员每跑一个case都要上传测试结果附件到QC.每个待测功能模块可能包含几十上百的case.于是手工上传测试结果变成了繁重的体力劳动.令人惊讶的是我们的工具开发组竟然说做不了 ...
- java.util.Properties类 学习笔记
学习目标: 1.认识properties文件,理解其含义,会正确创建properties文件. 2.会使用java.util.Properties类来操作properties文件. 3.掌握相对路 ...
- 开涛spring3(2.2) - IoC 容器基本原理及其helloword
2.2.1 IoC容器的概念 IoC容器就是具有依赖注入功能的容器,IoC容器负责实例化.定位.配置应用程序中的对象及建立这些对象间的依赖.应用程序无需直接在代码中new相关的对象,应用程序由IoC ...