给大家推荐一个很好的自学网站,https://how2j.cn?p=77721,how2j,从基础到项目,一应俱全。可以先注册再学习,这样就可以记录学习进度咯!!!

今天做接口对接,在更新价格时,最开始传的值为整数,发现报错,询问对方后得知需要统一保留两位小数,没有则为.00,于是对原有JSONObject进行改造,遍历并替换其中的值。下面贴出代码:

 JSONObject jsonObject = JSONObject.parseObject(jsonstring);
JSONArray jsonArray = jsonObject.getJSONArray("skuList");
for (Object object : jsonArray) {
JSONObject midObject = (JSONObject) object;
BigDecimal price = midObject.getBigDecimal("price");
midObject.put("price", new BigDecimal(String.format("%.2f", price.doubleValue())));
}

JSON操作讲解

  • put可以强制更新json里面的值
 JSONObject json = JSON.parseObject("{val: 123}");
System.out.println("======before=====");
System.out.println("size: " + json.size());
System.out.println("val: " + json.get("val"));
//直接put相同的key
json.put("val", 234);
System.out.println("======after======");
System.out.println("size: " + json.size());
System.out.println("val: " + json.get("val"));
结果 ======before=====
size: 1
val: 123
======after======
size: 1
val: 234

最新文章

  1. 二、Spring——AoP
  2. Android网络编程系列 一 TCP/IP协议族之传输层
  3. swift:入门知识之函数与闭包
  4. Java中的集合类
  5. toString结果
  6. (原)Apache添加完限速模块后的文件
  7. openssl命令行Base64编解码
  8. angular替代Jquery,常用方法支持
  9. 2016-2017 ACM-ICPC, NEERC, Southern Subregional Contest J. Bottles
  10. GNU autotools自动生成Makefile 介绍
  11. LindDotNetCore~添加路由前缀
  12. django开发新手教程(原创)
  13. Gin框架源码解析
  14. CentOS7使用firewalld防火墙配置端口
  15. 软工个人作业4——Alpha阶段个人总结
  16. UVa699
  17. 用代码生成UINavigationController 与UITabBarController相结合的简单QQ框架(部分)
  18. 1.Zabbix配置[仅环境搭建]
  19. python类中方法加单下划线、双下划线、前后双下滑线的区别
  20. jq select 一些操作

热门文章

  1. 编译原理--05 用C++手撕PL/0
  2. Educational Codeforces Round 81 (Rated for Div. 2) - D. Same GCDs(数学)
  3. php substr的一些用法
  4. 洛谷 P1043 数字游戏(区间dp)
  5. OpenCV介绍
  6. 寒假pta二
  7. ARG 构建参数----Dockerfle文件的重用
  8. 关于无线的Idle Timeout和Session Timeout
  9. MySQL复制方法
  10. 【译】高级T-SQL进阶系列 (二)【下篇】:使用 APPLY操作符