setScale(1)表示保留一位小数,默认用四舍五入方式setScale(1,BigDecimal.ROUND_DOWN)直接删除多余的小数位,如2.35会变成2.3setScale(1,BigDecimal.ROUND_UP)进位处理,2.35变成2.4setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35变成2.4setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五入,2.35变成2.3,如果是5则向下舍示例:
double dou = 3.14789;//BigDecimal.ROUND_UP 四舍五入//BigDecimal.ROUND_DOWN 直接舍弃保留位数之后小数BigDecimal bigDecimal = new BigDecimal(dou).setScale(2, BigDecimal.ROUND_DOWN);double newDouble = bigDecimal.doubleValue();System.out.println("newDouble:" + newDouble);注: 1、BigDecimal.ROUND_UP 四舍五入,BigDecimal.ROUND_DOWN 直接舍弃保留位数之后小数; 2、位数不够时,不会补齐
6.BigDecimal 数据库存储类型对应 decimalBigDecimal 数据保存在 Mysql 的时候,可以使用 decimal 的数据库数据类型
decimal(m,d)
m是数字的最大位数,他的范围是从1-65;
d是小数点后的位数,他的范围是0-30,并且不能大于m 。
如果m被省略了,那么m的值默认为10,
如果d被省略了,那么d的值默认为0.
举例表示:
1、decimal(5,2) 所指代的范围是-999.99~999.99 数字的最大位数是5位,小数点右侧是2位,即有两位小数 。
2、decimal(7,6)所指代的范围是-9.999999~9.999999 数字的最大位数是7位,小数点右侧是6位,即有六位小数 。
【BigDecimal 用法总结】
经验总结扩展阅读
- .Net Framework中的AppDomain.AssemblyResolve事件的常见用法、问题,以及解决办法
- 【博学谷学习记录】超强总结,用心分享|MySql连接查询超详细总结
- 黄豆酱的用途与用法
- 解释内存中的栈堆和静态区的用法
- 无悔华夏政略机制用法是什么
- 悦薇水乳正确用法
- C语言下for循环的一点技巧总结
- 2022.9.30 Java第四次课后总结
- vue3中pinia的使用总结
- 我的世界炸药怎么用