1. public static void main(String[] args) {
2. // 1. 先乘后四舍五入, 再除;
3. double d = 62.31060027198647;
4.
5. double d2 = Math.round(d*100)/100.0;
6. System.out.println("通过Math取整后做除法: " + d2);
7.
8. // 2. 通过BigDecimal的setScale()实现四舍五入与小数点位数确定, 将转换为一个BigDecimal对象.
9. BigDecimal bd = new BigDecimal(d);
10. BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
11. System.out.println("通过BigDecimal.setScale获得: " + bd2);
12.
13. // 3. 通过DecimalFormat.format返回String的
14. DecimalFormat df = new DecimalFormat("#.##");
15. System.out.println("通过DecimalFormat.format获得: " + df.format(d));
16.
17. // 4. 通过String.format
18. System.out.println("通过StringFormat: " + String.format("%.2f", d));
19. }
20.
21.// 通过Math取整后做除法: 62.31
22.// 通过BigDecimal.setScale获得: 62.31
23.// 通过DecimalFormat.format获得: 62.31
24.// 通过StringFormat: 62.31
分享到:
相关推荐
本文将详细解析如何在Java中实现四舍五入,并探讨不同方法的适用场景。 ### Java四舍五入的基础概念 四舍五入是指将一个数字舍去小数部分时,如果小数部分小于等于0.4,则向下取整;如果小数部分大于等于0.6,则...
在Java编程语言中,对数字进行四舍五入并保留指定的小数位数是常见的需求。以下是五种不同的方法来实现这一目标: 1. **使用`BigDecimal`类**: `BigDecimal`是Java中用于处理高精度、大数值计算的类,提供了多种...
通过调用`setScale`方法可以方便地设置小数位数,并指定四舍五入的方式。 ```java double f = 111231.5585; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue...
标题 "sishewuru.rar_四舍五入" 暗示了我们关注的主题是关于数值计算中的四舍五入操作。在这个主题下,我们将深入探讨四舍五入的定义、用途、方法以及在编程中实现四舍五入的常见算法。 四舍五入是一种在数学和...
- `setScale(int newScale, int roundingMode)`:设置新的标度(即小数点后保留的位数),并指定舍入模式。 3. **舍入模式**: - `BigDecimal.ROUND_UP`:远离零舍入,无论下一个数字是多少,都向上舍入。 - `...
### 四舍五入中小数位问题:深入探讨与科学解决方案 #### 一、四舍五入的传统理解及其局限性 在数学运算中,四舍五入是一种常见的处理小数精度的方法,尤其当数据需要简化或适配特定显示格式时。传统上,四舍五入...
在这个例子中,`setScale`方法用于设置小数位数,第二个参数`ROUND_HALF_UP`表示四舍五入。`doubleValue()`则将`BigDecimal`对象转换回`double`类型。 ### 方法二:使用`DecimalFormat` `DecimalFormat`是`java....
### Java中的小数点与百分号处理技巧 在Java编程中,经常需要处理数值的格式化显示问题,尤其是在涉及财务、统计分析等场景时。本文将详细介绍如何利用Java中的`java.text.DecimalFormat`和`java.text.NumberFormat...
1. 使用Math.round()方法:通过将Double类型数据乘以一定的倍数,然后使用Math.round()方法对其进行四舍五入,最后除以该倍数即可得到保留小数位的结果。 double d = 114.145; d = (double) Math.round(d * 100) / ...
总之,Java中实现四舍五入并保留指定小数位数的关键在于先放大数值,然后使用`Math.round()`四舍五入,最后缩小数值,确保结果符合预期。这个过程需要谨慎处理数据类型,以防止精度损失。通过学习和理解这段代码,...
本文将深入探讨如何在Java中保留两位小数,并覆盖四舍五入、浮点数精确计算以及避免科学记数法等问题。 #### 四舍五入保留两位小数 四舍五入是数学中的一个基本概念,指的是当一个数的小数部分小于等于0.5时,将其...
在这个例子中,`setScale`方法用于设置小数位数,第二个参数`RoundingMode.HALF_UP`是舍入模式,表示四舍五入。 总的来说,Java提供了多种方法来控制和格式化浮点数的小数位数,如`NumberFormat`和`BigDecimal`,...
- `setScale(2, BigDecimal.ROUND_HALF_UP)` 表示将该`BigDecimal`对象的小数点后保留2位,并采用四舍五入的方式处理第三位及以后的数字。 - 最终得到的`double f1`即为保留两位小数的结果。 #### 方法二:使用`...
在Java编程语言中,处理数值类型的精度问题是一个常见的需求,特别是在金融、统计或者科学计算等领域。当涉及到`double`类型数据的处理时,保持数值的精确性和格式化输出显得尤为重要。例如,在处理货币金额时,通常...
这些方法可以根据具体的需求选择使用,比如保留固定的小数位数、去除多余的零、或者在保持精度的同时进行四舍五入。在实际开发中,理解并熟练运用这些技巧能帮助你更好地控制数字的输出格式,提高代码的可读性和用户...
double d = 0.200; DecimalFormat df = new DecimalFormat(0.00); System.out.println(df.format(d)); 输出结果为: 0.20 若double d=0.000;输出结果为0.00; 若double d=0;输出结果为0.00;...
在Android开发中,有时我们需要对数字进行格式化处理,确保它们只显示小数点后两位。这在显示价格、评分等需要精确到分或者小数点后两位的场景下非常常见。本文将介绍两种实现这一功能的方法。 1. 使用`...
在13.5500除以5时,实际计算结果是13.5500000...,在四舍五入到第1位时,由于5之后的位数不为0,所以进位得到13.6。 BigDecimal还提供了其他一些方法,如`compareTo()`用于比较两个BigDecimal对象的大小,`scale()`...
Java计算类是一个专门设计用于进行基本数学运算(加、减、乘、除)以及控制数字格式(四舍五入、保留特定位数的小数)的类。该类使用了Java中的BigDecimal类来确保在处理大数字或者要求精度高的计算时,能够保持计算...
这将将acc的值保留到小数点后两位,并将其转换为字符串形式。 在Freemarker中保留两位小数可以使用字符串格式化语法,例如: <#if centerFreeSize??> ${centerFreeSize?string("#.##")} <#else> 0.00 其中...