[alibaba.fastjson]JSONObject\JSONArray使用

这篇博客介绍了Fastjson和net.sf.json两个JSON库在处理JSON数据时的用法,并对比了它们的性能差异。文章通过具体的Java代码示例展示了如何将String转换为JSONArray和JSONObject,以及如何获取对象的属性。Fastjson在空值处理上更为友好,不会抛出找不到的错误,而net.sf.json在找不到值时会抛出异常。博客建议使用Fastjson因其更高的效率和更少的依赖。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

依赖包:fastjson-1.2.73.jar

//String 转 JSONArray
JSONArray jo1=JSONArray.parseArray(array);
//取第0个(从0开始)
System.out.println(jo1.getJSONObject(0));
//String 转 JSONObject
JSONObject jo2=JSONObject.parseObject(object);
//取JSONObject的JSONObject,格式需要对应否则会报错,找不到返回null
System.out.println(jo2.getJSONObject("positionExtProperties"));
//取JSONObject的JSONArray,格式需要对应否则会报错,找不到返回null
System.out.println(jo2.getJSONArray("positionExtProperties"));
//取JSONObject的String,找不到返回null
System.out.println(jo2.getString("positionExtProperties"));
alibaba.fastjson取到如果为空是null(不是字符串的null)

=============分割线=============

以下是net.sf.json的JSONObject\JSONArray使用(不推荐,效率低依赖包多,找不到还会报错)
依赖包:
json-lib-2.4-jdk15.jar
ezmorph-1.0.6.jar
commons-logging-1.2.jar
commons-lang-2.3.jar
commons-collections-3.2.jar
commons-beanutils-1.9.3.jar

////String 转 JSONArray
JSONArray jo1=JSONArray.fromObject(array);
//取第0个(从0开始)
System.out.println(jo1.getJSONObject(0));
//String 转 JSONObject
JSONObject jo2=JSONObject.fromObject(object);
//取JSONObject的JSONObject,格式需要对应否则会报错,找不到也会报错
System.out.println(jo2.getJSONObject("positionExtProperties"));
//取JSONObject的JSONArray,格式需要对应否则会报错,找不到也会报错
System.out.println(jo2.getJSONArray("positionExtProperties"));
//取JSONObject的String,找不到会报错
System.out.println(jo2.getString("positionExtProperties"));
net.sf.json取到空会报找不到
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值