java中的JSONObject和JSONArray的不同

2 篇文章 0 订阅
2 篇文章 0 订阅

最近在得到数据,转换数据的时候常常不明白什么时候需要使用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);

     

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值