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

日常BUG——Java使用Bigdecimal类型报错

在这里插入图片描述

  • 😜           :是江迪呀
  • ✒️本文关键词日常BUGBUG问题分析
  • ☀️每日   一言存在错误说明你在进步!

一、问题描述

直接上代码:

@Test
public void test22() throws ParseException {System.out.println(new BigDecimal(0).divide(new BigDecimal(54)).setScale(2,BigDecimal.ROUND_HALF_UP));
}

报错内容:

Non-terminating decimal expansion; no exact representable decimal result.

二、问题原因

原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常。

三、问题解决

将代码修改成下面所示即可:

@Test
public void test22() throws ParseException {System.out.println(new BigDecimal(0).divide(new BigDecimal(54),2,BigDecimal.ROUND_HALF_UP));
}
http://www.lryc.cn/news/119749.html

相关文章:

  • 为Windows Terminal设置背景图片
  • 【Spring】-Spring中Bean对象的存取
  • 机器人CPP编程基础-03变量类型Variables Types
  • 或许有用的开源项目平台——物联网、区块链、商城、CMS、客服系统、低代码、可视化、ERP等
  • 火车头采集伪原创插件【php源码】
  • 【数学】CF1514 C
  • SqlServer基础之(触发器)
  • 数据结构刷题训练:队列实现栈
  • (统计学习方法|李航)第四章 朴素贝叶斯算法——贝叶斯估计
  • 企业直播MR虚拟直播(MR混合现实直播技术)视频介绍
  • React Fiber: 从 Reconciliation 到 Concurrent Mode
  • 【PostgreSQL内核学习(十一)—— OpenGauss源码学习(CopyTo)】
  • 计算机网络 网络层 IPv4地址
  • 【程序员社交】多和高层次人群交流
  • 机器学习笔记 - 基于C++的​​深度学习 三、实现成本函数
  • lazada、shopee店铺如何利用测评提高权重和排名?
  • 安全第二次
  • 125、SpringBoot可以同时处理多少请求?
  • SSE技术和WebSocket技术实现即时通讯
  • 什么是敏捷开发?
  • tcp发送整型,结构体等数据的方法
  • 【Unity每日一记】让一个物体按余弦曲线移动—(三角函数的简单运用)
  • python爬虫实战——数据可视化
  • 案例13 Spring MVC参数传递案例
  • IntellIJ Idea 连接数据库-MySql
  • 通讯协议036——全网独有的OPC HDA知识一之聚合(五)计数
  • 【TensorFlow】P0 Windows GPU 安装 TensorFlow、CUDA Toolkit、cuDNN
  • 基于身份的安全威胁正在迅速增长
  • 解决ElementUI动态表单校验验证不通过
  • 深眸科技|发现AI+3D视觉的价值,技术升级加速视觉应用产品国产替代