給大家推薦一個很好的自學網站,https://how2j.cn?p=77721,how2j,從基礎到項目,一應俱全。可以先注冊再學習,這樣就可以記錄學習進度咯!!!
今天做接口對接,在更新價格時,最開始傳的值為整數,發現報錯,詢問對方后得知需要統一保留兩位小數,沒有則為.00,於是對原有JSONObject進行改造,遍歷並替換其中的值。下面貼出代碼:
1 JSONObject jsonObject = JSONObject.parseObject(jsonstring);
2 JSONArray jsonArray = jsonObject.getJSONArray("skuList");
3 for (Object object : jsonArray) {
4 JSONObject midObject = (JSONObject) object;
5 BigDecimal price = midObject.getBigDecimal("price");
6 midObject.put("price", new BigDecimal(String.format("%.2f", price.doubleValue())));
7 }
JSON操作講解
1 JSONObject json = JSON.parseObject("{val: 123}");
2 System.out.println("======before=====");
3 System.out.println("size: " + json.size());
4 System.out.println("val: " + json.get("val"));
5 //直接put相同的key
6 json.put("val", 234);
7 System.out.println("======after======");
8 System.out.println("size: " + json.size());
9 System.out.println("val: " + json.get("val"));
10 結果
11
12 ======before=====
13 size: 1
14 val: 123
15 ======after======
16 size: 1
17 val: 234