JsonArray用法(二)
一 JSONArray和JSONOject的用法
JSONArray用法
1 解析字符串JSONArray jsonarr = JSONArray.parseArray(str);2 存值取值(1) 存值jsonarr.add(obj);(2) 取值for(int i =0; i <= jsonarr.size(); i++){jsonarr[i].get(key);} 3 格式: 本质是数组, 必须是数组格式, 用 [ ] 包裹数据 格式: [{key:value},{key:value}... ]["str1","str2","str3",...]
JSONObject的用法
1 解析字符串JSONObject obj = JSONArray.parseObject(str);2 存值取值(1) 存值obj.put("key", key);obj.put("value", value);(2) 取值value = obj.get(key);3 格式:本质是对象, 用 {} 表示格式: {key:value}
案例
public class JsonTest {public static void main(String[] args) {String s1 = "[]";String s2 = "[{}]";String s3 = "";String s4 = null;String s5 = "[{\"functionId\":\"14\",\"needBuy\":false,\"functionName\":\"功能1\"},{\"functionId\":\"17\",\"needBuy\":false,\"functionName\":\"功能2\"}]";String s6 = "{}";JSONArray jsonarr1 = JSONArray.parseArray(s1);JSONArray jsonarr2 = JSONArray.parseArray(s2);JSONArray jsonarr3 = JSONArray.parseArray(s3);JSONArray jsonarr4 = JSONArray.parseArray(s4);JSONArray jsonarr5 = JSONArray.parseArray(s5);//JSONArray jsonarr6 = JSONArray.parseArray(s6);Object obj1 = JSONObject.parse(s1);Object obj2 = JSONObject.parse(s2);Object obj3 = JSONObject.parse(s3);Object obj4 = JSONObject.parse(s4);Object obj5 = JSONObject.parse(s5);Object obj6 = JSONObject.parse(s6);System.out.println("s1 = " + jsonarr1);System.out.println("s2 = " + jsonarr2);System.out.println("s3 = " + jsonarr3);System.out.println("s4 = " + jsonarr4);System.out.println("s5 = " + jsonarr5);//System.out.println("s6 = " + jsonarr6);System.out.println("");System.out.println("obj1 = " + obj1);System.out.println("obj2 = " + obj2);System.out.println("obj3 = " + obj3);System.out.println("obj4 = " + obj4);System.out.println("obj5 = " + obj5);System.out.println("obj6 = " + obj6);答案: 打印第6条因格式不对, 会报错, 所以注释了s1 = []s2 = [{}]s3 = nulls4 = nulls5 = [{"functionId":"14","needBuy":false,"functionName":"功能1"},{"functionId":"17","needBuy":false,"functionName":"功能2"}]//Exception in thread "main" com.alibaba.fastjson.JSONExceptobj1 = []obj2 = [{}]obj3 = nullobj4 = nullobj5 = [{"functionId":"14","needBuy":false,"functionName":"功能1"},{"functionId":"17","needBuy":false,"functionName":"功能2"}]obj6 = {}
总结
只要格式正确, 空字符串和null都是可以解析的
JsonArray用法(二)相关推荐
- 最重要的事情 一 、消息通信机制(1)ant 打包方法(2) system.out.println()用法 二、UML学习
最重要的事情 一 .消息通信机制(1)ant 打包方法(2) system.out.println()用法 二.UML学习
- 【Linux命令】ip addr、ip link、ifconfig 用法 二
文章目录 1. 前言 2. ip link 2.1 ip link add 2.1.1 命令实例 2.2 ip link set 2.3 ip link show 2.4 ip link delete ...
- Linux九阴真经之九阴白骨爪残卷5(ansible用法二之Playbook和YAML语法)
playbook是由一个或多个"play"组成的列表 play的主要功能在于将事先归并为一组的主机装扮成事先通过ansible中的task定义好的角色.从根本上来讲,所谓task无 ...
- JSONArray用法(三)
一 JSONArray 添加 JSONObject 1 语法: JSONArray.add(JSONObject); 2 格式: [{"key": "value" ...
- 详解MySQL字符串函数CONCAT()、CONCAT_WS()、INSERT()、REPLACE()、LOWER()、UPPER()用法(二)
文章目录 一.合并字符串函数CONCAT()和CONCAT_WS() 1.CONCAT() 2.CONCAT_WS() 二.替换字符串INSERT()和REPLACE 1.INSERT() 2.REP ...
- boost::function的用法(二)
boost function是一组类和模板组合,用于包装各种函数.从功能上,它类似于函数指针,但是比函数指针的功能更强大. 使用boost function,必须包含头文件 [cpp] view pl ...
- requirejs的用法(二)
这个系列的第一部分和第二部分,介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战. 我采用的是一个非常流行的库require.js. 一.为什么要用require.js? 最早的 ...
- Android ListView常用用法(二)
来自:51CTO论坛 原帖:http://mobile.51cto.com/android-254823.htm Android开发:实现带图片和checkbox的listview 项目要用到一个li ...
- C语言之volatile用法(二十一)
一.volatile 介绍 参看:volatile详解 参看:C Language Keywords Indicates that a variable can be changed by a bac ...
最新文章
- 【面向工业界】推荐算法工程师培养计划
- mysql 存储过程 输出warning_如何抑制MySQL存储过程的输出?
- ethtool修改网卡队列
- gradle风格的groovy代码
- pod实例数是什么意思_[灌水] Kubernetes In Action: Pod
- 函数的返回值-交换两个变量的值
- Linux系统编程(三)进程间的通信
- PHP7 ini 配置大全
- RDLC使用手册_RDLC报表部署
- coreldraw linux版本好用,CorelDRAW哪个版本最好用
- pg数据库中两个字段相除
- 计算机xp画板在哪找,xp系统画图工具在哪里|xp画图工具有什么功能
- 小米笔试题 风口的猪-中国牛市
- jquery 遍历父元素、子元素、兄弟元素
- 使用nexus搭建maven私服(一)安装启动
- 使用transformers从头训练Bert
- TreeView和数据库
- 巨富笔记:上者劳人,中者劳智,下者劳力
- R语言之主成分回归与偏最小二乘xt8.3xt8.4
- crm如何做好客户关系管理?
热门文章
- CentOS添加和删除用户
- Markdown pad2 保存为pdf的两种方法
- ibm服务器维修 代码ed,IBM服务器安装全过程
- “一桶半“如何撑起今麦郎上市的“明天“?
- TI Sitara系列AM64x开发板(双核ARM Cortex-A53)软硬件资料规格书
- 那些说「程序员」的穿搭丑爆的?看完这篇我们再聊!
- RJ45连机器硬件测试解决方案
- DoS本地拒绝服务攻击
- 在训练过程中加入Dropout
- 小学六年级 计算机演讲稿,小学六年级演讲稿大全