BigDecimal的setScale四大常用方法总结
// 设置小数点后第三位数字一大一小观察效果 BigDecimal num = new BigDecimal("3.3235667"); BigDecimal numOne = new BigDecimal("3.3275667");
1、ROUND_UP:进位制:不管保留数字后面是大是小(0除外)都会进1
// ROUND_UP--进位制:不管保留数字后面是大是小(0除外)都会进1 BigDecimal num1 = num.setScale(2,BigDecimal.ROUND_UP); System.out.println("SmallROUND_UP:"+num1); BigDecimal numTwo = numOne.setScale(2,BigDecimal.ROUND_UP); System.out.println("BigROUND_UP:"+numTwo); 打印结果:SmallROUND_UP:3.33 BigROUND_UP:3.33
2、ROUND_DOWN:保留设置数字,后面所有直接去除
// ROUND_DOWN--保留设置数字,后面所有直接去除
BigDecimal num2 = num.setScale(2,BigDecimal.ROUND_DOWN); System.out.println("SmallROUND_DOWN:"+num2); BigDecimal numThree = numOne.setScale(2,BigDecimal.ROUND_DOWN); System.out.println("BigROUND_DOWN:"+numThree);打印结果:SmallROUND_DOWN:3.32BigROUND_DOWN:3.32
3、ROUND_HALF_UP:根据保留数字后一位>=5进行四舍五入
// ROUND_HALF_UP--根据保留数字后一位>=5进行四舍五入 BigDecimal num3 = num.setScale(2,BigDecimal.ROUND_HALF_UP); System.out.println("SmallROUND_HALF_UP:"+num3); BigDecimal numFour = numOne.setScale(2,BigDecimal.ROUND_HALF_UP); System.out.println("BigROUND_HALF_UP:"+numFour);
打印结果:SmallROUND_HALF_UP:3.32 BigROUND_HALF_UP:3.33
4、ROUND_HALF_DOWN:根据保留数字后一位>5进行四舍五入
BigDecimal num4 = num.setScale(2,BigDecimal.ROUND_HALF_DOWN); System.out.println("SmallROUND_HALF_DOWN:"+num4); BigDecimal numFive = numOne.setScale(2,BigDecimal.ROUND_HALF_DOWN); System.out.println("BigROUND_HALF_DOWN:"+numFive);
打印结果:SmallROUND_HALF_DOWN:3.32 BigROUND_HALF_DOWN:3.33
BigDecimal的setScale四大常用方法总结相关推荐
- BigDecimal类setScale方法问题:算数异常,精确度丢失-ArithmeticException: Rounding necessary
BigDecimal类setScale方法问题:算数异常,精确度丢失-ArithmeticException: Rounding necessary 在运行如下代码时, package BigDeci ...
- BigDecimal类 setScale()方法java.lang.ArithmeticException: Rounding necessary
BigDecimal调用setScale方法时,当未设置舍入模式时,系统会给个默认ROUND_UNNECESSARY(int 值为7)值,如果小数点后不为零,而且要保留的小数位数小于旧小数位数,那么此 ...
- java bigdecimal.round_down,java BigDecimal 的 setScale() 方法的 BigDecimal.ROUND_DOWN 舍入模式的BUG,坑...
因为项目使用到 BigDecimal.ROUND_DOWN 接近零的舍入模式 ,没想到有一个 使用的坑. 下面来例子说明: String add = "67.80"; System ...
- Java使用BigDecimal的setScale方法进行百位向上取整
int num = 199; BigDecimal bd = new BigDecimal(num); bd = bd.setScale(-2, BigDecimal.ROUND_DOWN); Sys ...
- java -- BigDecimal的setScale的几种用法
setScale对BigDecimal类型的数值进行精度的处理. public BigDecimal setScale(int newScale, int roundingMode) {... } n ...
- ROUND_UP、ROUND_DOWN、ROUND_HALF_UP(BigDecimal四舍五入)、ROUND_HALF_DOWN
BigDecimal的setScale常用方法(ROUND_UP.ROUND_DOWN.ROUND_HALF_UP.ROUND_HALF_DOWN) BigDecimal的setScale四大常用方法 ...
- Java中BigDecimal类常用方法,舍入策略
标题 Java BigDecimal 的舍入模式 (RoundingMode)详解 提一下银行家算法 BigDecimal和BigInteger Java中BigDecimal常用方法 BigDeci ...
- bigdecimal正确用法_深入理解 BigDecimal 的使用
什么是 BigDecimal BigDecimal 可以表示一个任意大小且精度完全准确的浮点数. 为什么用 BigDecimal 而不用 double Talk is cheap, Show me t ...
- BigDecimal用法之计算等额本金和等额本息
一.引言 <EffactiveJava>中介绍float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算 ...
最新文章
- python中类似对象吗_在Python中,两个对象什么时候相同? - python
- virtualBox 创建新虚拟机
- (原創) 如何讓P7010外接螢幕支援1440x900(WXGA+)? (NB) (P7010)
- numpy.copy详解
- MySQL集群中主从切换
- 「SLAM」三维空间刚体运动名词笔记
- excel 2010 group and subtotal function
- jquery解析php json,Jquery解析json数据详解_jquery
- 系统软件设计原则_软件系统设计原则
- 陈一为担任BCF理事
- Python爬虫自学系列(四)
- 黑龙江等保测评机构项目测评收费价格标准参考
- ubuntu 安装视频下载器Annie
- 服务器协议 重发 回包 039,3情报板预置播放表、位图一览表.doc
- 【计算机毕业设计】092二手闲置交易市场系统
- 大数据技术之名词解释
- android水果购物车,实现购物车功能
- 九日集训 总结与展望
- P1873 砍树(二分查找模板)
- 【渝粤教育】电大中专计算机职业素养 (2)作业 题库
热门文章
- 1920 1080 壁纸
- oracle数据备份 恢复,Oracle数据备份和恢复
- 如何修改嵌入式服务器的端口号,Ai聘网之如何修改Spring Boot应用启动的嵌入式Tomcat的默认端口8080...
- python元组有啥用_python元组的用法
- 分享一个switch任天堂一体式手柄支持PD快充数据传输方案
- ESP8266模块使用
- php抓取数据并且保存到Excel
- ERP系统适合机械加工行业吗?有哪些应用?
- 多少事从来急,天地转光阴急
- 基于JAVA老年人健康饮食管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署