JSONObject遍历并替换部分json值

2021-05-02 05:27

阅读:385

标签:format   sys   统一   开始   key   代码   讲解   ice   int   

今天做接口对接,在更新价格时,最开始传的值为整数,发现报错,询问对方后得知需要统一保留两位小数,没有则为.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操作讲解

  • put可以强制更新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

JSONObject遍历并替换部分json值

标签:format   sys   统一   开始   key   代码   讲解   ice   int   

原文地址:https://www.cnblogs.com/coder-wf/p/12130804.html


评论


亲,登录后才可以留言!