`

java中的BigDecimal 和double 四舍五入操作并设置小数点位数

    博客分类:
  • java
阅读更多
public static void main(String[] args) {     
        // 1. 先乘后四舍五入, 再除;     
        double d = 62.31060027198647;     
    
        double d2 = Math.round(d*100)/100.0;     
        System.out.println("通过Math取整后做除法: " + d2);     
    
        // 2. 通过BigDecimal的setScale()实现四舍五入与小数点位数确定, 将转换为一个BigDecimal对象.     
        BigDecimal bd = new BigDecimal(d);     
        BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP);     
        System.out.println("通过BigDecimal.setScale获得: " + bd2);     
    }     
    
// 通过Math取整后做除法: 62.31     
// 通过BigDecimal.setScale获得: 62.31     

 

分享到:
评论

相关推荐

    java 四舍五入 需要的朋友看看

    本文将详细解析如何在Java中实现四舍五入,并探讨不同方法的适用场景。 ### Java四舍五入的基础概念 四舍五入是指将一个数字舍去小数部分时,如果小数部分小于等于0.4,则向下取整;如果小数部分大于等于0.6,则...

    java中BigDecimal的操作方法

    其中,`RoundingMode`枚举提供了多种舍入策略,如`ROUND_HALF_UP`(四舍五入)和`ROUND_HALF_DOWN`(逢五不进,逢五不退)等。需要注意的是,当使用`ROUND_HALF_DOWN`时,例如: ```java System.out.println(divide("67...

    BigDecimal向Double转换

    本文将详细介绍如何在Java中实现BigDecimal到Double的转换,并探讨转换过程中需要注意的关键点。 ## 一、BigDecimal简介 ### 1.1 BigDecimal的概念 BigDecimal是java.math包下的一个类,它提供了对不可变的、任意...

    Java四舍五入时保留指定小数位数的五种方式

    在这里,`setScale()`方法用于设置小数点后的位数(2),`ROUND_HALF_UP`是舍入模式,表示四舍五入。结果`f1`将是3.15。 2. **使用`DecimalFormat`类**: `DecimalFormat`是`java.text`包中的一个类,它可以按照...

    sishewuru.rar_四舍五入

    标题 "sishewuru.rar_四舍五入" 暗示了我们关注的主题是关于数值计算中的四舍五入操作。在这个主题下,我们将深入探讨四舍五入的定义、用途、方法以及在编程中实现四舍五入的常见算法。 四舍五入是一种在数学和...

    Java中限制小数位数问题

    通过调用`setScale`方法可以方便地设置小数位数,并指定四舍五入的方式。 ```java double f = 111231.5585; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue...

    bigdecimal

    2. **舍入模式**: `BigDecimal.ROUND_HALF_UP` 表示四舍五入模式,这是最常见的舍入方式。`BigDecimal` 还提供了其他多种舍入模式,如 `ROUND_DOWN`、`ROUND_UP` 等,可以根据具体需求选择。 3. **异常处理**: 当 `...

    java 四舍五入保留小数的实现方法

    `BigDecimal`是Java中处理高精度、大范围数值的一个类,它提供了丰富的算术运算方法,包括四舍五入。以下是使用`BigDecimal`进行四舍五入的例子: ```java double f = 3.1516; BigDecimal b = new BigDecimal(f); ...

    Java中Double除保留后小数位的几种方法(小结)

    在上述方法中,BigDecimal类和DecimalFormat类提供了多种对Double类型数据进行保留小数位的方式,例如四舍五入、五舍六入、直接截掉小数位等。同时,String.format()方法和NumberFormat类也提供了简洁的方式对Double...

    java中BigDecimal进行加减乘除的基本用法

    这将 `mc` 的值四舍五入到小数点后两位。 同时,`negate()` 方法用于将 `BigDecimal` 对象变为相反数: ```java BigDecimal mcNegated = mc.negate(); ``` 总的来说,`BigDecimal` 提供了丰富的功能,能够满足精确...

    介绍Java的大数类(BigDecimal)和八种舍入模式

    - ROUND_HALF_UP:四舍五入,如果舍弃部分等于0.5或大于0.5,则向上舍入。 - ROUND_HALF_DOWN:五舍六入,如果舍弃部分大于0.5,则向上舍入,否则向下舍入。 - ROUND_HALF_EVEN:银行家舍入,如果舍弃部分等于0.5...

    Java保留两位小数方法大全

    - `setScale(2, BigDecimal.ROUND_HALF_UP)` 表示将该`BigDecimal`对象的小数点后保留2位,并采用四舍五入的方式处理第三位及以后的数字。 - 最终得到的`double f1`即为保留两位小数的结果。 #### 方法二:使用`...

    java(小数点,百分号处理)

    本文将详细介绍如何利用Java中的`java.text.DecimalFormat`和`java.text.NumberFormat`类来处理小数点、百分比等格式的数值。 #### 一、`java.text.DecimalFormat`类 `DecimalFormat`是`NumberFormat`的一个子类,...

    double保留小数

    - `BigDecimal.ROUND_HALF_UP`:四舍五入,向“最接近的邻居”舍入,除非两者都同样接近,此时舍入远离零的方向。 - `BigDecimal.ROUND_HALF_DOWN`:五舍六入,向“最接近的邻居”舍入,除非两者都同样接近,此时...

    Java BigDecimal类用法详解

    Java中的`BigDecimal`类是用来表示任意精度的十进制数,尤其适合于需要精确计算的商业和财务场景。它的核心概念包括非标度值(unscaled value)和标度(scale),非标度值是一个任意精度的整数,标度则是小数点后的...

    java保留两位小数问题

    本文将深入探讨如何在Java中保留两位小数,并覆盖四舍五入、浮点数精确计算以及避免科学记数法等问题。 #### 四舍五入保留两位小数 四舍五入是数学中的一个基本概念,指的是当一个数的小数部分小于等于0.5时,将其...

    Java 计算类

    Java计算类是一个专门设计用于进行基本数学运算(加、减、乘、除)以及控制数字格式(四舍五入、保留特定位数的小数)的类。该类使用了Java中的BigDecimal类来确保在处理大数字或者要求精度高的计算时,能够保持计算...

    BigDecimal详解、代码示例和经常遇到的坑

    `BigDecimal`提供了多种舍入模式来处理超出小数点后位数限制的情况,例如: - `RoundingMode.UP`:始终向上舍入。 - `RoundingMode.DOWN`:始终向下舍入。 - `RoundingMode.CEILING`:如果是正数,则向上舍入;如果...

    详谈Java中BigDecimal的一个除法异常

    在Java编程中,`BigDecimal` 类是用于进行高精度浮点数运算的,它解决了`float`和`double`类型在处理大数或精确计算时存在的精度问题。然而,在使用`BigDecimal`进行除法操作时,如果不进行特殊处理,可能会遇到`...

    使用java代码实现保留小数点的位数

    在这个例子中,`setScale`方法用于设置小数位数,第二个参数`RoundingMode.HALF_UP`是舍入模式,表示四舍五入。 总的来说,Java提供了多种方法来控制和格式化浮点数的小数位数,如`NumberFormat`和`BigDecimal`,...

Global site tag (gtag.js) - Google Analytics