`

json学习之三:JSONArray的应用

阅读更多
从json数组中得到相应java数组,如果要获取java数组中的元素,只需要遍历该数组。
  /**
	  * 从json数组中得到相应java数组
	  * JSONArray下的toArray()方法的使用
	  * @param str
	  * @return
	  */
	  public static Object[] getJsonToArray(String str) {
	      JSONArray jsonArray = JSONArray.fromObject(str);
	      return jsonArray.toArray();
	  }

   public static void main(String[] args) {		
        JSONArray jsonStrs = new JSONArray();
        jsonStrs.add(0, "cat");
        jsonStrs.add(1, "dog");
        jsonStrs.add(2, "bird");
        jsonStrs.add(3, "duck");
        
        Object[] obj=getJsonToArray(jsonStrs.toString());
        for(int i=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型
	  * @param str
	  * @return
	  */
	 public static Long[] getJsonToLongArray(String str) {
		  JSONArray jsonArray = JSONArray.fromObject(str);
		  Long[] arr=new Long[jsonArray.size()];
		  for(int i=0;i<jsonArray.size();i++){
			  arr[i]=jsonArray.getLong(i);
			  System.out.println(arr[i]);
		  }
		  return arr;
	}
	 /**
	  * 将json数组转化为String型
	  * @param str
	  * @return
	  */
	 public static String[] getJsonToStringArray(String str) {
		  JSONArray jsonArray = JSONArray.fromObject(str);
		  String[] arr=new String[jsonArray.size()];
		  for(int i=0;i<jsonArray.size();i++){
			  arr[i]=jsonArray.getString(i);
			  System.out.println(arr[i]);
		  }
		  return arr;
	}
	 /**
	  * 将json数组转化为Double型
	  * @param str
	  * @return
	  */
	 public static Double[] getJsonToDoubleArray(String str) {
		  JSONArray jsonArray = JSONArray.fromObject(str);
		  Double[] arr=new Double[jsonArray.size()];
		  for(int i=0;i<jsonArray.size();i++){
			  arr[i]=jsonArray.getDouble(i);
		  }
		  return arr;
	}
	 /**
	  * 将json数组转化为Date型
	  * @param str
	  * @return
	  */
	 public static Date[] getJsonToDateArray(String jsonString) {

		  JSONArray jsonArray = JSONArray.fromObject(jsonString);
		  Date[] dateArray = new Date[jsonArray.size()];
		  String dateString;
		  Date date;
		  SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
		  for (int i = 0; i < jsonArray.size(); i++) {
			  dateString = jsonArray.getString(i);
			  try {
				  date=sdf.parse(dateString);
				  dateArray[i] = date;
			  } catch (Exception e) {
				  e.printStackTrace();
			  }
		  }
		  return dateArray;
	}


 public static void main(String[] args) {
	        
        JSONArray jsonLongs = new JSONArray();
        jsonLongs.add(0, "111");
        jsonLongs.add(1, "222.25");
        jsonLongs.add(2, new Long(333));
        jsonLongs.add(3, 444);
        
        Long[] log=getJsonToLongArray(jsonLongs.toString());
        for(int i=0;i<log.length;i++){
        	System.out.println(log[i]);
        }
        
        JSONArray jsonStrs = new JSONArray();
        jsonStrs.add(0, "2011-01-01");
        jsonStrs.add(1, "2011-01-03");
        jsonStrs.add(2, "2011-01-04 11:11:11");
        
        Date[] d=getJsonToDateArray(jsonStrs.toString());        
        for(int i=0;i<d.length;i++){
        	System.out.println(d[i]);
        }
	}
  /*结果如下:
	 * 111
	 * 222
	 * 333
	 * 444
	 * 
	 * Sat Jan 01 00:00:00 CST 2011
	 * Mon Jan 03 00:00:00 CST 2011
	 * Tue Jan 04 00:00:00 CST 2011
	 */
分享到:
评论
1 楼 fancychendong 2012-12-26  
果断赞个,

相关推荐

    JSONLIB之JSONObject与JSONArray的使用

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。...通过学习和实践,我们可以轻松地在Java应用程序中集成JSON功能,提高数据交换的效率和便利性。

    TCL解析json

    在IT行业中,JSON(JavaScript Object Notation)是一种广泛使用的轻量级数据交换格式...无论是在脚本编程、系统集成还是在Web开发中,TCL解析和生成JSON的能力都使得它成为一个实用的工具,值得开发者深入学习和掌握。

    Android高级应用源码-Android 解析json_dome.zip

    通过研究这个示例项目,开发者不仅可以学习如何解析JSON,还能了解到如何在网络请求后处理数据,如何在Android UI组件中展示这些数据,以及如何优雅地处理错误。这将有助于提升Android应用的开发技能和对数据交换的...

    JSON的学习总结(总结+源码)

    JSON的学习涉及其基本语法、JSONObject和JSONArray的使用,以及在JavaScript中的解析方法。理解这些知识点对于开发Web应用至关重要,无论你是服务器端开发者还是前端开发者。正确地处理和解析JSON数据能有效提升应用...

    JSON net.sf.json jar包

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。它易于人阅读和编写,同时也易于机器解析和生成。`net.sf.json`是开源项目Apache软件基金会下的一个...

    json.jar 包

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传输数据。`json.jar` 是一个包含JSON处理功能的Java库,主要用于解析和生成JSON格式的数据。在Java开发中,`json.jar` ...

    json-rpc-java-1.0源代码

    通过阅读和理解"json-rpc-java-1.0"源代码,可以学习到如何在实际项目中有效地应用JSON-RPC。 总结来说,"json-rpc-java-1.0"项目提供了JSON-RPC协议的Java实现,涉及到JSON数据结构的使用、网络通信、序列化和反...

    json 2.1 jar包和源文件

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它易于人阅读和编写,同时也易于机器解析和生成。JSON格式基于JavaScript的一个子集,但它是独立于语言的,有...

    qml 实现Json可视化,头脑风暴

    在IT行业中,JSON(JavaScript Object Notation)是一种广泛使用...通过学习和理解这个项目,开发者可以了解到如何在实际项目中应用QML和JSON进行数据可视化,这对于调试、数据分析和构建数据驱动的QML应用非常有帮助。

    JSON教程.pdf

    ### JSON详解及在GWT中的应用 #### JSON概念与特性 JSON,即JavaScript Object Notation,是一...对于想要深入学习JSON及其在实际项目中应用的读者,推荐查阅官方文档和其他专业资料,以获取更全面的知识和实践经验。

    javajson.zip

    JSON,全称JavaScript Object Notation,是一种轻量级的数据...以上内容涵盖了JSON在Java环境中的基本使用、常见库的介绍及其应用场景,如果你解压`javajson.zip`并深入学习,你将能够熟练地在Java项目中处理JSON数据。

    android demo,json数据格式的案例的应用

    在Android开发中,JSON(JavaScript Object Notation)是一种常见的数据交换格式,被广泛用于网络...通过学习和理解这个示例,开发者能够更好地处理服务器与客户端之间的数据交互,提升Android应用的功能性和用户体验。

    json.org.jar

    2. JSON数组(JSONArray): JSONArray是JSON中的数组结构在Java中的表示,它可以存储任意数量的JSON对象或者基本类型。你可以通过add()方法添加元素,get()方法获取指定索引的元素,还有length()方法获取数组长度等...

    android Json使用

    在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它使得人和机器都能容易地读取和编写数据。...通过实践和学习,开发者可以熟练掌握这些技能,更好地实现Android应用的扩展和优化。

    android之json和gson数据解析最完整的代码例子(包括各种样式的json数据)

    JSON(JavaScript Object Notation)和Gson是Android开发中常用的数据序列化和反序列化工具,...以上就是关于“Android之json和gson数据解析最完整的代码例子”的详细介绍,希望对您在学习和使用JSON及Gson时有所帮助。

    java实现http请求以及解析json与java对象转换 项目源代码实例

    通过这个项目源代码实例,你可以学习到如何在实际项目中使用Java进行HTTP通信和JSON操作,并将理论知识应用到实践中,提升你的编程技能。直接下载并运行源代码,你可以逐步调试和分析每个部分,加深对这两个主题的...

    json 源代码

    2. **org.json库**:Android SDK自带的一个轻量级JSON处理库,提供`JSONObject`和`JSONArray`类,用于创建和操作JSON对象。例如,`new JSONObject()`可以创建一个新的JSON对象,`put()`方法用于添加键值对。 3. **...

    Android高级应用源码-客户端与服务端的json交互的小例子.rar

    在Android开发中,客户端和服务端的数据交互是必不可少的,JSON作为一种轻量级的数据交换格式,因其易读性、易解析和平台无关性而被广泛应用于移动应用开发中。本资源"Android高级应用源码-客户端与服务端的json交互...

    Android应用源码之Android 解析json_dome.zip

    在Android应用开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于服务器与客户端之间的数据传输。本教程将通过Android应用源码深入解析如何在Android平台上解析JSON数据,帮助开发者...

    Android Json 解析demo

    在Android开发中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于应用程序与服务器之间的数据传输。这个“Android Json ...通过学习这个示例,你将掌握Android应用中与JSON交互的关键技能。

Global site tag (gtag.js) - Google Analytics