给大家推荐一个很好的自学网站,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