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