Java转化为json所对应的类型格式
List<Object[]>
代码如下
List<Object[]> list = new ArrayList<Object[]>();
Object[] obj1 = new Object[3];
obj1[0] = "郑州";
obj1[1] = 10;
obj1[2]=333;
Object[] obj2 = new Object[2];
obj2[0] = "安阳";
obj2[1] = 220;
list.add(obj1);
list.add(obj2);
System.out.println(JsonUtils.objectToJson(list));
结果如下
个人感觉:如果后台是数组,那么转出来的json数据就不是带有花括号{}的键值对存在
这种格式,在Highcharts的3D饼状图中使用了点我查看
[
["郑州", 10, 333],
["安阳", 220]
]
List<map<String,Object>>
map里有key,那么这个key就是json格式中的key,list是数组,外部必定包含[],里面使用{}键值对的形式包含
代码如下
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("郑州", 15);
map1.put("安阳", 22);
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("郑州2222", 15222);
map2.put("安阳2222", 22222);
list.add(map1);
list.add(map2);
System.out.println(JsonUtils.objectToJson(list));
结果如下
个人感觉:如果后台是数组,那么转出来的json数据就不是带有花括号{}的键值对存在
[{
"安阳": 22,
"郑州": 15
}, {
"郑州2222": 15222,
"安阳2222": 22222
}]
Map<String,Object> map里放List<Object[]>
Map<String, Object> map = new HashMap<String, Object>();
List<Object[]> list = new ArrayList<Object[]>();
Object[] obj1 = new Object[2];
obj1[0] = "综合";
obj1[1] = 45;
list.add(obj1);
Object[] obj2 = new Object[2];
obj2[0] = "石油";
obj2[1] = 25;
list.add(obj2);
Object[] obj3 = new Object[2];
obj3[0] = "化工";
obj3[1] = 28;
list.add(obj3);
System.out.println(JsonUtils.objectToJson(list));
map.put("list", list);
System.out.println(JsonUtils.objectToJson(map));
map转为json不是数组,肯定是键值对存在{a:b,k:v}
json格式如下:
//list<object[]>
[
["综合", 45],
["石油", 25],
["化工", 28]
]
//map
{
"222": [
["综合", 45],
["石油", 25],
["化工", 28]
],
"list": [
["综合", 45],
["石油", 25],
["化工", 28]
]
}