jsonArray与java中数据转换

从json数组中得到相应java数组,如果要获取java数组中的元素,只需要遍历该数组。

/**

*从json数组中得到相应java数组

*JSONArray下的toArray()方法的使用

*@paramstr

*@return

*/

publicstaticObject[]getJsonToArray(Stringstr){

JSONArrayjsonArray=JSONArray.fromObject(str);

returnjsonArray.toArray();

}

publicstaticvoidmain(String[]args){

JSONArrayjsonStrs=newJSONArray();

jsonStrs.add(0,"cat");

jsonStrs.add(1,"dog");

jsonStrs.add(2,"bird");

jsonStrs.add(3,"duck");

Object[]obj=getJsonToArray(jsonStrs.toString());

for(inti=0;i<obj.length;i++){

System.out.println(obj[i]);

}

}

从json数组中得到java数组,可以对该数组进行转化,如将JSONArray转化为String型、Long型、Double型、Integer型、Date型等等。
分别采用jsonArray下的getString(index)、getLong(index)、getDouble(index)、getInt(index)等方法
同样,如果要获取java数组中的元素,只需要遍历该数组。

/**

*将json数组转化为Long

*@paramstr

*@return

*/

publicstaticLong[]getJsonToLongArray(Stringstr){

JSONArrayjsonArray=JSONArray.fromObject(str);

Long[]arr=newLong[jsonArray.size()];

for(inti=0;i<jsonArray.size();i++){

arr[i]=jsonArray.getLong(i);

System.out.println(arr[i]);

}

returnarr;

}

/**

*将json数组转化为String

*@paramstr

*@return

*/

publicstaticString[]getJsonToStringArray(Stringstr){

JSONArrayjsonArray=JSONArray.fromObject(str);

String[]arr=newString[jsonArray.size()];

for(inti=0;i<jsonArray.size();i++){

arr[i]=jsonArray.getString(i);

System.out.println(arr[i]);

}

returnarr;

}

/**

*将json数组转化为Double

*@paramstr

*@return

*/

publicstaticDouble[]getJsonTodoubleArray(Stringstr){

JSONArrayjsonArray=JSONArray.fromObject(str);

Double[]arr=newDouble[jsonArray.size()];

for(inti=0;i<jsonArray.size();i++){

arr[i]=jsonArray.getDouble(i);

}

returnarr;

}

/**

*将json数组转化为Date

*@paramstr

*@return

*/

publicstaticDate[]getJsonToDateArray(StringjsonString){

JSONArrayjsonArray=JSONArray.fromObject(jsonString);

Date[]dateArray=newDate[jsonArray.size()];

StringdateString;

Datedate;

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");

for(inti=0;i<jsonArray.size();i++){

dateString=jsonArray.getString(i);

try{

date=sdf.parse(dateString);

dateArray[i]=date;

}catch(Exceptione){

e.printstacktrace();

}

}

returndateArray;

}

publicstaticvoidmain(String[]args){

JSONArrayjsonLongs=newJSONArray();

jsonLongs.add(0,"111");

jsonLongs.add(1,"222.25");

jsonLongs.add(2,newLong(333));

jsonLongs.add(3,444);

Long[]log=getJsonToLongArray(jsonLongs.toString());

for(inti=0;i<log.length;i++){

System.out.println(log[i]);

}

JSONArrayjsonStrs=newJSONArray();

jsonStrs.add(0,"2011-01-01");

jsonStrs.add(1,"2011-01-03");

jsonStrs.add(2,"2011-01-0411:11:11");

Date[]d=getJsonToDateArray(jsonStrs.toString());

for(inti=0;i<d.length;i++){

System.out.println(d[i]);

}

}

/*结果如下:

*111

*222

*333

*444

*

*SatJan0100:00:00CST2011

*MonJan0300:00:00CST2011

*TueJan0400:00:00CST2011

*/

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...