json格式说明

本文详细解析了一个使用Java处理复杂数据结构的过程,包括一维数组、二维数组、Map、List及其相互转换为JSON格式的具体实现。通过实例代码展示如何将数据封装到Map中,并最终序列化为JSON字符串。

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

代码如下:

for (int i1 = 0, l = list.size(); i1 < l; i1++) {
						Object[] t = (Object[]) list.get(i1);
						node = new Node(t[1].toString(), t[0].toString());
						nodeList.add(node);

						List l1 = new ArrayList();
						List l2 = new ArrayList();

						Map m = new HashMap();
						m.put("name", personPlace);
						Map m2 = new HashMap();
						m2.put("name", t[1].toString());
						l1.add(m);
						l1.add(m2);

						Map m3 = new HashMap();
						m3.put("name", t[1].toString());
						m3.put("value", t[0].toString());

						l2.add(m);
						l2.add(m3);

						placesLink.add(l1);
						PlaceCounts.add(l2);

						String a = JsonMapperUtils.objectToJson(l2);
						String b = JsonMapperUtils.objectToJson(PlaceCounts);
						String c = JsonMapperUtils.objectToJson(m3);
						String d = JsonMapperUtils.objectToJson(l1);

					}

  输出结果:

一维数组:
String[] a = new String[phoneList.size()];

二维数组:
String[][] b =new String[phoneList.size()][2];
map:
m: {name=北京} m3:{name=南昌, value=2}

list: l1:[{name=北京}, {name=南昌}] l2:[{name=北京}, {name=南昌, value=2}]

list中的list placeCounts:[[{name=北京}, {name=南昌, value=2}]] 对应的json格式:
a:
["a","b","c"]
b:
[["a","b"],["a1","b1"],["c1","d1"],["c12","d22"]] m3: {"name":"南昌","value":"2"} l2: [{"name":"北京"},{"name":"南昌","value":"2"}] placeCounts: [[{"name":"北京"},{"name":"南昌","value":"2"}]] [[{"name":"北京"},{"name":"南昌","value":"2"}],[{"name":"北京"},{"name":"重庆","value":"4"}]]

 

Map<String, Object> info = new HashMap<String, Object>();
info.put("nodeList", nodeList); info.put("placesLink", placesLink); //数组 info.put("PlaceCounts", PlaceCounts); //数组 String json = JsonMapperUtils.objectToJson(info);

 输出结果

{"phoneNums":["北京"],"nodeList":[{"name":"南昌","value":"2"},{"name":"重庆","value":"4"},{"name":"拉萨","value":"2"},{"name":"上海","value":"1"}],
"PlaceCounts":[["name:北京","name:南昌,value:2"],["name:北京","name:重庆,value:4"],["name:北京","name:拉萨,value:2"],["name:北京","name:上海,value:1"]],
"success":true, "placesLink":[["{name:北京}","{name:南昌}"],["{name:北京}","{name:重庆}"],["{name:北京}","{name:拉萨}"],["{name:北京}","{name:上海}"]]}

 

Map<String, Object> info = new HashMap<String, Object>();
info.put("nodeList", nodeList);
info.put("placesLink", placesLink); //list<list<map<key,value>>>
String json = JsonMapperUtils.objectToJson(info);

 输出结果

{"phoneNums":["北京"],
"nodeList":[{"name":"南昌","value":"2"},{"name":"重庆","value":"4"},{"name":"拉萨","value":"2"},{"name":"上海","value":"1"}],
"PlaceCounts":[[{"name":"北京"},{"name":"南昌","value":"2"}],[{"name":"北京"},{"name":"重庆","value":"4"}],[{"name":"北京"},{"name":"拉萨","value":"2"}], [{"name":"北京"},{"name":"上海","value":"1"}]],
"success":true,
"placesLink":[[{"name":"北京"},{"name":"南昌"}],[{"name":"北京"},{"name":"重庆"}],[{"name":"北京"},{"name":"拉萨"}],[{"name":"北京"},{"name":"上海"}]]}

  

 

  

 

 

转载于:https://www.cnblogs.com/estellez/p/4925271.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值