JSONObject/JSONArray的区别

来源:互联网 发布:对讲机写频软件 编辑:程序博客网 时间:2024/05/22 05:17

JSONObject/JSONArray的区别

(1)JSONObject : java对象,用{}包裹起来
例如:{”id”:1 , “username”:”wp”}
(2)JSONArray : 数组或字符串[1,2,3]
(3)特殊形式:
{“id”:1 , “username:” :”wp” , “books” :[{“book1” : “java开发”},{ “book2” : “android开发”}]}这是JSONObject中嵌套JSONArray的形式,其中books是JSONArray的形式,books中又含有book1,book2的JSONObject的形式 获取方式:
JSONArray array = jsonObject.getJSONArray(“books”);
(3)写入JSONObject

        JSONObject json=new JSONObject();         JSONObject json1=new JSONObject();         JSONObject json2=new JSONObject();         JSONArray books=new JSONArray();          json1.put("book1","java开发");        json2.put("book2","android开发");        books.put(json1);        books.put(json2);        json.put("id",1);        json.put("username","wp");        json.put("username","wp");        json.put("books",books);        System.out.println(json.toString());

结果:

{"books":[{"book1":"java开发"},{"book2":"android开发"}],"id":1,"username":"wp"}

(4)读取json数据

        String s=json.toString();        JSONArray array = json.getJSONArray("books");        JSONObject a=new JSONObject(s);        System.out.println(array);        System.out.println(a.getInt("id"));

结果:

[{"book1":"java开发"},{"book2":"android开发"}]1

(5)list转JSONArray( map,数组 转json与其类似)

        ArrayList<String> list=new ArrayList<String>();        list.add("java");        list.add("android");        JSONArray jsonarray = JSONArray.fromObject(list);        System.out.println(jsonarray);

(6)Object对象转JSONObject

        User u1=new User(1,"wp1");        User u2=new User(2,"wp2");        ArrayList<User> list=new ArrayList<User>();        list.add(u1);        list.add(u2);        JSONObject jsonobject =JSONObject.fromObject(list);        System.out.println(jsonobject);
0 0