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