当前位置: 首页 > ops >正文

【bug修复积累】关于包装类型和基本数据类型的使用

1)
Double tapWaterFluorideAverage = fluorosisRemediationMapper.searchTapWaterFluorideAverage(currentYear);
从mysql查出可能为null,因此用Double接收,要注意xml文件中的returnType也需要是Double类型,以防报错2)

endemicFluorosisOverview.setTapWaterFluorideAverage(Math.round(tapWaterFluorideAverage * 100.0) / 100.0); ×

当要进行计算时,如果是null * 100,则会报空指针,因此我们计算时,因尽量使用基本数据类型计算。Double->double,防止Double为null,有两种方式转换:

方式1:

double dubiousTimes = Optional.ofNullable(tapWaterFluorideAverage).orElse(0);

方式2: 

double value = tapWaterFluorideAverage != null ? tapWaterFluorideAverage : 0.0; endemicFluorosisOverview.setTapWaterFluorideAverage(Math.round(value * 100.0) / 100.0);

http://www.xdnf.cn/news/14991.html

相关文章:

  • 分库分表之实战-sharding-JDBC水平分库+分表后:查询与删除操作实战
  • SQLZoo 练习与测试答案汇总(复杂题有最优解与其他解法分析、解题技巧)
  • 全志H616开发学习文档
  • WPF学习笔记(27)科学计算器
  • ObjectClear - 图像处理新革命,一键“抹除”图像中任意物体与阴影 支持50系显卡 一键整合包下载
  • [附源码+数据库+毕业论]基于Spring Boot+mysql+vue结合内容推荐算法的学生咨询系统
  • 如何将FPGA设计的验证效率提升1000倍以上(3)
  • rt thread studio 和 KEIL对于使用rt thread 的中间件和组件,哪个更方便
  • 使用 Docker 搭建 Go Web 应用开发环境——AI教你学Docker
  • Mac mini 高性价比扩容 + Crossover 游戏实测 全流程手册
  • Go语言Gin框架实战:开发技巧
  • 【保姆级喂饭教程】Windows下安装Git Flow
  • LabVIEW前面板颜色修改
  • uniapp如何创建并使用组件?组件通过Props如何进行数据传递?
  • 基于Java+Maven+Testng+Selenium+Log4j+Allure+Jenkins搭建一个WebUI自动化框架(5)失败用例截图与重试
  • 源码角度解析 --- HashMap 的 get 和 put 流程
  • LLM 在预测下一个词的时候是怎么计算向量的,说明详细过程
  • vue3.2 前端动态分页算法
  • 大数据在UI前端的应用创新研究:基于机器学习的用户异常行为检测
  • Flutter基础(前端教程⑨-图片)
  • 数字大脑的培育法则:深度解读监督学习神经网络
  • 记一次接口优化历程 CountDownLatch
  • RIP实验以及核心原理
  • latex关于页面横置的问题
  • 百度文心一言开源ERNIE-4.5深度测评报告:技术架构解读与性能对比
  • 【JavaEE进阶】图书管理系统(未完待续)
  • 基于大模型的窦性心动过速全周期预测与诊疗方案研究报告
  • React面试高频考点解析
  • 后端id设置long类型时,传到前端,超过19位最后两位为00
  • 单例模式(饿汉模式,懒汉模式)