Java--工具类String、Map、JSONObject、JSONArray相互转换

这篇博客介绍了如何在Java中使用Fastjson和json-lib库进行JSONObject和JSONArray之间的转换,包括字符串到对象,对象到字符串,以及不同对象间的互相转换。详细讲述了两个库的不同之处和转换方法。

目录

一、前期说明

二、转换实现

2.1 net.sf.json.JSONObject

Map、JSONObject、JSONArray转jsonObjectString

jsonObjectString 转JSONObject

jsonArrayString 转JSONArray

jsonObjectString 转Map

Map转JSONObject

JSONArray转JSONArray

JSONArray转JSONArray

2.2 com.alibaba.fastjson.JSONObject

Map、JSONObject、JSONArray转jsonObjectString

jsonObjectString 转JSONObject(不同于net.sf.json.JSONArray)

jsonArrayString 转JSONArray(不同于net.sf.json.JSONArray)

jsonObjectString 转Map

Map转JSONObject(不同于net.sf.json.JSONArray)

JSONArray转JSONArray

JSONArray转JSONArray


一、前期说明

JSONObject本文只提com.alibaba.fastjson.JSONObjectnet.sf.json.JSONObject两种。

依赖架包

com.alibaba.fastjson.JSONObject需要依赖fastjson-1.2.28.jar架包,

net.sf.json.JSONObject需要依赖commons-beanutils-1.9.3.jar、commons-collections-3.2.1.jar、

commons-lang-2.6.jar、commons-logging-1.1.1.jar、ezmorph-1.0.6.jar、json-lib-2.4-jdk15.jar架包。

截图JSONObject相关依赖架包CSDN下载地址:http://download.csdn.net/download/justinqin/10158995

CSDN下载自动调整到50积分了,-_-||,网盘下载 https://pan.baidu.com/s/1PzgHUOCesCj4xNG6jZ666w 提取码:kpvy

二、转换实现

2.1 net.sf.json.JSONObject

Map、JSONObject、JSONArray转jsonObjectString

map.toString();
jsonObject.tonString();
jsonArray.toString();

jsonObjectString 转JSONObject

net.sf.json.JSONObject  jsonObject = net.sf.json.JSONObject.fromObject(jsonObjectString);

jsonArrayString 转JSONArray

net.sf.json.JSONArray jsonArray= net.sf.json.JSONArray.fromObject(jsonArrayString);

jsonObjectString 转Map

net.sf.json.JSONObject  jsonObject = net.sf.json.JSONObject.fromObject(jsonObjectString);
Map jsonMap= jsonObject;    //JSONObject转jsonMap(自动转换)

Map转JSONObject

net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(map);

JSONArray转JSONArray

//遍历获取
for (int i = 0; i < jsonArray.size(); i++) {
    // 获取每一个jsonObject对象
    net.sf.json.JSONObject jsonObject = jsonArray.getJSONObject(i);
}

JSONArray转JSONArray

net.sf.json.JSONArray jsonArray = new net.sf.json.JSONArray();
jsonArray.add(jsonObject1);
jsonArray.add(jsonObject2);
jsonArray.add(jsonObject3);

 

2.2 com.alibaba.fastjson.JSONObject

Map、JSONObject、JSONArray转jsonObjectString

map.toString();
jsonObject.tonString();
jsonArray.toString();

jsonObjectString 转JSONObject(不同于net.sf.json.JSONArray

com.alibaba.fastjson.JSONObject  jsonObject = com.alibaba.fastjson.JSONObject.parseObject(jsonObjectString);

jsonArrayString 转JSONArray(不同于net.sf.json.JSONArray

com.alibaba.fastjson.JSONArray jsonArray= com.alibaba.fastjson.JSONArray.parseArray(jsonArrayString);

jsonObjectString 转Map

com.alibaba.fastjson.JSONObject  jsonObject = com.alibaba.fastjson.JSONObject.parseObject(jsonObjectString);
Map jsonMap= jsonObject;    //JSONObject转jsonMap(自动转换)

Map转JSONObject(不同于net.sf.json.JSONArray

com.alibaba.fastjson.JSONObject jsonObject = (JSONObject) com.alibaba.fastjson.JSONObject.toJSON(map);

JSONArray转JSONArray

//遍历获取
for (int i = 0; i < jsonArray.size(); i++) {
    // 获取每一个jsonObject对象
    com.alibaba.fastjson.JSONObject jsonObject = jsonArray.getJSONObject(i);
}

JSONArray转JSONArray

com.alibaba.fastjson.JSONArray jsonArray = new com.alibaba.fastjson.JSONArray();
jsonArray.add(jsonObject1);
jsonArray.add(jsonObject2);
jsonArray.add(jsonObject3);

PS:

文中jsonObjectString表示JSONObject格式的字符串,如:

String jsonObjectString = "{\"name\":\"张三\",\"mobile\":\"13877908888\"}";

jsonArrayString表示JSONArray数组格式的字符串,如:

String jsonArrayString = "[{'name':'张三', 'mobile':'13877908888'},{'name':'李四', 'mobile':'13877906666'}]";

计算机网络是信息技术领域的重要组成部分,它使得不同地理位置的设备能够相互通信和资源共享。谢希仁第八版的《计算机网络》详细介绍了网络的基础知识。在信息时代,计算机网络分为电信网络、有线电视网络和计算机网络,其中互联网以其连通性和共享性成为主导。互联网的发展经历了三个阶段:从最初的ARPANET到分组交换网络,再到形成全球多层ISP结构的互联网。ISP(Internet Service Provider)是提供互联网接入服务的提供商,分为主干、地区和本地互联网服务。互联网的交换中心——IXP(Internet Exchange Point)允许不同ISP之间直接交换数据,提高效率并降低成本。互联网的组成包括边缘部分和核心部分。边缘部分由所有连接互联网的终端构成,它们进行通信和资源的共享,可以是个人电脑、手机等小端系统,也可以是大型计算机这样的大端系统。通信方式有客户-服务器模式(C/S)和对等方式(P2P)。核心部分由路由器和网络组成,路由器执行分组发,是网络的核心。网络交换方式有电路交换、存储交换(如报文交换、分组交换和信元交换)。电路交换适用于连续数据流,如电话,而分组交换更适应数据包的独立传输,能更好地利用网络资源。计算机网络按覆盖范围可分为广域网(WAN)、城域网、局域网(LAN)和个人区域网。网络性能指标包括速率(数据传输速率)、带宽、吞吐量和时延。速率是每秒传输的比特数,带宽指信道能传输的最大数据率,吞吐量是实际通过网络的数据量,时延则包括发送、传播、处理和排队时延。计算机网络体系结构定义了各层及其协议的功能,如OSI七层模型和TCP/IP四层模型。协议是数据交换的规则,包括语法、语义和同步。在TCP/IP协议栈中,应用层处理具体应用,运输层(TCP/UDP)负责进程间通信,网络层处理主机间通信,数据链路层和物理层负责数据在链路和物理介质上的传
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾日三省贾斯汀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值