微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JSONArray的学习

从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
*/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐