当前位置: 代码迷 >> Java Web开发 >> 一个json格式, 要用什么类型回表示
  详细解决方案

一个json格式, 要用什么类型回表示

热度:107   发布时间:2016-04-16 22:19:22.0
一个json格式, 要用什么类型来表示?
 series : [ {
 name : 'Tokyo',
 data : [ 7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6 ],
         tooltip: {valueSuffix: '元'}
 }, {
 name : 'New York',
 data : [ -0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5 ],
 tooltip: {valueSuffix: '元'}
 }, {
 name : 'Berlin',
 data : [ -0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0 ],
 tooltip: {valueSuffix: '元'}
 }, {
 name : 'London',
 data : [ 3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8 ],
 tooltip: {valueSuffix: '元'}
 } ]

比如这串,   要用什么类型表示?  (不要对象)

------解决方案--------------------
JSONObject本身就是Map的子类,如果你这样的json代码中用得比较多的话,可以构造出一个这样的model,通过JSONObject来转换,如果不是很多可以使用Map<String,List<Object>>。
------解决方案--------------------
你这是在做图表的数据吧,可以使用list<Map<String,Object>>来表示:
最外层是一个list,存放每个map对象,每个map里面便是你的数据,如题中有name,data和tooltip三个key,由于这三个类型并非一种,故而用Object,对于data这个类型可以再用List来表示,tooltip则可以用map来表示。
------解决方案--------------------

public void json(){
//最终要返回的map
Map<String,List<Map<String,Object>>> rtnMap = new HashMap<String,List<Map<String,Object>>>();
//series
List<Map<String,Object>> series = new ArrayList<Map<String,Object>>();

//参数1
Map<String,Object> param = new HashMap<String,Object>();
param.put("name", "Tokyo");
param.put("data",new Double[]{7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6} );
Map<String,String> temp = new HashMap<String,String>();
temp.put("valueSuffix", "元");
param.put("tooltip",temp);
//添加到series
series.add(param);

/*
参数2
Map<String,Object> param2 = new HashMap<String,Object>();
param2.put("name", "Tokyo");
param2.put("data",new Double[]{7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6} );
Map<String,String> temp2 = new HashMap<String,String>();
temp2.put("valueSuffix", "元");
param2.put("tooltip",temp2);
添加到series
series.add(param2);
*/

rtnMap.put("series", series);
}

------解决方案--------------------
如果是前台的话,那么使用var就可以了
如果是后台的话,那么你可以使用Map,或者是list,如果你想要将json格式的字符串转换成为对象的话,那么使用
Gson,或者是json-lib这两个随意一个就可以了

json说白了也就是key:value的形式
  相关解决方案