JAVA中 JSONObject与JSONArray的使用

一、JAR包

     需引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:

      1.commons-lang.jar

      2.commons-beanutils.jar

      3.commons-collections.jar

      4.commons-logging.jar 

      5.ezmorph.jar

      6.json-lib-2.2.2-jdk15.jar

二、JSONObject对象使用

//JSONObject对象的创建和数据的添加(key-value方式)
    private static JSONObject createJSONObject(){   
        JSONObject jsonObject = new JSONObject();   
        jsonObject.put("username","天涯草");   
        jsonObject.put("sex", "男");   
        jsonObject.put("QQ", "1");   
        jsonObject.put("Min.score", new Integer(99));   
        jsonObject.put("nickname", "天涯草");   
        return jsonObject;   
    }   

 

public static void main(String[] args) {   
        JSONObject jsonObject = JSONObjectSample.createJSONObject();   
        //输出jsonobject对象   
        System.out.println("jsonObject==>"+jsonObject);   
           
        //判读输出对象的类型   
        boolean isArray = jsonObject.isArray();   
        boolean isEmpty = jsonObject.isEmpty();   
        boolean isNullObject = jsonObject.isNullObject();   
        System.out.println("isArray:"+isArray+" isEmpty:"+isEmpty+" isNullObject:"+isNullObject);   
           
        //添加属性   
        jsonObject.element("address", "天涯草");   
        System.out.println("添加属性后的对象==>"+jsonObject);   
           
        //创建一个JSONArray对象并添加数据
        JSONArray jsonArray = new JSONArray();   

        jsonArray.add(0, "this is a jsonArray value");   
        jsonArray.add(1,"another jsonArray value");   

 

       //把jsonArray对象 添加到jsonObject对象
        jsonObject.element("jsonArray", jsonArray);   
        JSONArray array = jsonObject.getJSONArray("jsonArray");   
        System.out.println("返回一个JSONArray对象:"+array);   


        //添加JSONArray后的值   
        // {"username":"天涯草","sex":"男","QQ":"天涯草","Min.score":99,"nickname":"天涯草","address":"天涯草","jsonArray":["this is a jsonArray value","another jsonArray value"]}  
        System.out.println("结果="+jsonObject);   
           
        //jsonObject根据key返回一个字符串   
        String username = jsonObject.getString("username");   
        System.out.println("username==>"+username);  
        
        //把字符与JSONObject的转换
        String temp=jsonObject.toString();
        JSONObject object = JSONObject.fromObject(temp);
        //转换后根据Key返回值
        System.out.println("qq="+object.get("QQ"));
        
    }  

三、JSONArray和JSONObject的互相添加

JSONObject jo = new JSONObject();
jo.put("isleaf", true);
jo.put("name", "zhangsan");
jo.put("age", "25");

JSONObject jo2 = new JSONObject();
jo2.put("isleaf", false);
jo2.put("name", "lisi");
jo2.put("age", "25");

(1)//把JSONObject添加到中JSONArray

JSONArray ja0 = new JSONArray();
ja0.add(jo3);

(2)//把JSONArray添加到JSONObject中

jo2.element("children", ja0);
System.out.println(jo2.toString());

 

JSONArray ja1 = new JSONArray();
ja1.add(jo);
ja1.add(jo2);

四、JSONArray 中遍历 JSONObject

方法一:

JSONArray array = JSONArray.fromObject(data);
for  (Object object : array) {
   JSONObject o = JSONObject.fromObject(object);
     o.get( "name" )
}


方法二:
 

JSONArray array = JSONArray.fromObject(data);
for  (int i = 0; i < array.size(); i++) {
    JSONObject o = array.getJSONObject(i);
    o.get( "name" )
}

 

你可能感兴趣的:(JAVA中 JSONObject与JSONArray的使用)