天天看點

java中的JSONObject和JSONArray的不同

最近在得到資料,轉換資料的時候常常不明白什麼時候需要使用JSONObject,什麼時候需要使用JSONArray。

今天特地去查了一些網頁終于弄明白了。

1.其實,JSONObject就是一個java對象,用{}包裹起來 例如:{”id”:1 , “username”:”dawn”} 

2.而JSONArray就是相對于java的數組。例如jsonArray2:["柯文修","23","5"]

3.那麼有人問我{"id":3,"name":"lisi","age":23,"arrayList":[{"柯文修","23","5"},{"ZHULI","30","6"}]}這個是什麼情況你?很簡單就是 JSONOb中嵌套了JSONArray。

那麼,如何給JSONObject指派呢?

1.    JSONObject jsonObj1 = new JSONObject();

        jsonObj1.put("id", "1");

        jsonObj1.put("name", "rose");

        jsonObj1.put("age", 25);

2.        Map map=new HashMap();

   map.put("我","妹");

   map.put("擦","哇");

   map.put("你","呀");

   JSONObject json = JSONObject.fromObject(map);

3.      String jsonStr = "{\"password\":\"123456\",\"username\":\"張三\"}";

         JSONObject jsonObj = JSONObject.fromObject(jsonStr);//從字元串轉成java代碼

那麼如何給JSONArray指派呢?

1.    JSONArray jsonArray3 = new JSONArray();

        jsonArray3.add("4");

        jsonArray3.add("wangwu");

        jsonArray3.add("26");

2.     ArrayList<String> arrayList = new ArrayList<String>();

        arrayList.add("柯文修");

        arrayList.add("23");

        arrayList.add("5");

        JSONArray.fromObject(arrayList);

3.    HashMap<String, Object> map = new HashMap<String,Object>();

        map.put("id", "2");

        map.put("name", "zhangsan");

        map.put("age", "25");

        JSONArray jsonArray3 = new JSONArray();

        jsonArray3.add(map);

4.  JSONArray jsonArray = new JSONArray();

        jsonArray.add(0, "ZHULI");

        jsonArray.add(1, "30");

        jsonArray.add(2, "ALI");

        jsonArray.add(1, "31");

        jsonArray.add(2,"Aroon");

那麼如何複制嵌套的呢?

1    ArrayList<String> arrayList = new ArrayList<String>();

        arrayList.add("柯文修");

        arrayList.add("23");

        arrayList.add("5");

        JSONArray.fromObject(arrayList);//先是變成一個JSONArray

        //建立一個複雜JSON對象(JSON對象裡有JSON數組)

        JSONObject jsonObj3 = new JSONObject();

        jsonObj3.put("id", 3);

        jsonObj3.put("name", "lisi");

        jsonObj3.put("age", 23);

        jsonObj3.put("arrayList", arrayList);//講arrayList放入到JSONObject中

        System.out.println("jsonObj3"+jsonObj3);