`
esffor
  • 浏览: 1367840 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于BigDecimal.ROUND_HALF_UP与ROUND_HALF_DOWN

UP 
阅读更多

ROUND_HALF_UP: 遇到.5的情况时往上近似,例: 1.5 ->;2
ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1

BigDecimal a = new BigDecimal(1.5);
                System.out.println("down="+a.setScale(0,BigDecimal.ROUND_HALF_DOWN)+"\tup="+a.setScale(0,BigDecimal.ROUND_HALF_UP));
结果:down=1  up=2
看这个例子就明白了!

其他参数说明

 

ROUND_CEILING    
  如果   BigDecimal   是正的,则做   ROUND_UP   操作;如果为负,则做   ROUND_DOWN   操作。    
  ROUND_DOWN    
  从不在舍弃(即截断)的小数之前增加数字。    
  ROUND_FLOOR    
  如果   BigDecimal   为正,则作   ROUND_UP   ;如果为负,则作   ROUND_DOWN   。    
  ROUND_HALF_DOWN    
  若舍弃部分>   .5,则作   ROUND_UP;否则,作   ROUND_DOWN   。    
  ROUND_HALF_EVEN    
  如果舍弃部分左边的数字为奇数,则作   ROUND_HALF_UP   ;如果它为偶数,则作   ROUND_HALF_DOWN   。    
  ROUND_HALF_UP    
  若舍弃部分>=.5,则作   ROUND_UP   ;否则,作   ROUND_DOWN   。    
  ROUND_UNNECESSARY    
  该“伪舍入模式”实际是指明所要求的操作必须是精确的,,因此不需要舍入操作。    
  ROUND_UP    
  总是在非   0   舍弃小数(即截断)之前增加数字。     
 



分享到:
评论
2 楼 zqb666kkk 2013-11-14  
nice  不错哦
1 楼 qq383185837 2010-03-04  
引用
ROUND_FLOOR    
  如果   BigDecimal   为正,则作   ROUND_UP   ;如果为负,则作   ROUND_DOWN   。
是不是写错了?

相关推荐

    BigDecimal.js.zip

    var quotient = bigNum1.divide(bigNum2, 10, BigDecimal.ROUND_HALF_UP); ``` 此外,BigDecimal.js还支持其他数学运算,如乘法、求余数、开方等。在处理复杂的数学表达式时,还可以使用链式调用: ```javascript ...

    double保留小数

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

    BigDecimal加减乘除计算

    - ROUND_FLOOR:向下舍入,接近负无穷大,正数与 ROUND_DOWN 相同,负数与 ROUND_UP 相同。 - ROUND_HALF_UP:四舍五入,最接近的数字,与银行家舍入规则类似。 - ROUND_HALF_DOWN:向最接近的数字舍入,如果与两...

    BigDecimal基本运算介绍

    在示例中,`c = a.divide(b, 2, BigDecimal.ROUND_HALF_UP)` 表示 `a` 除以 `b`,保留两位小数,采用四舍五入的舍入规则。这里的两个参数分别表示: - 第一个参数:`scale`,即小数位数。这里设置为 2,意味着结果...

    javascript版BigDecimal类库

    4. **舍入模式**:提供了多种舍入策略,如`ROUND_UP`、`ROUND_DOWN`、`ROUND_HALF_UP`等,以适应不同场景下的精度需求。 5. **格式化输出**:可以将`BigDecimal`对象转换为字符串,支持定制小数位数、千位分隔符、...

    sishewuru.rar_四舍五入

    除了标准的四舍五入,还有其他的舍入策略,如向零取整(ROUND_TO_ZERO)、向上取整(ROUND_UP)和向下取整(ROUND_DOWN)。这些策略可以根据实际需求选择使用,比如在金融计算中通常会使用不偏向任何一方的舍入策略...

    bigdecimal

    `BigDecimal` 还提供了其他多种舍入模式,如 `ROUND_DOWN`、`ROUND_UP` 等,可以根据具体需求选择。 3. **异常处理**: 当 `scale` 参数小于零时,代码抛出 `IllegalArgumentException` 异常,确保了参数的有效性。 ...

    jackson使用@JsonSerialize格式化BigDecimal解决.00不显示问题

    这里的`setScale(2, BigDecimal.ROUND_HALF_DOWN)`方法用于设置小数位数为2,并采用四舍五入的策略。 #### 2. 应用自定义序列化器 接下来,我们需要在返回给前端的实体类中的BigDecimal属性上添加`@JsonSerialize`...

    金额的大小转换及小数的四舍五入处理

    四舍五入模式有多种,如`ROUND_UP`(向上取整)、`ROUND_DOWN`(向下取整)等,`ROUND_HALF_UP`是最常用的,即常规的四舍五入规则。 总结起来,金额的大小转换涉及到数字的格式化,确保其符合人类阅读习惯;而小数...

    java中BigDecimal的操作方法

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

    java-BigInteger-BigDecimal类源码

    4. **舍入模式**:在执行除法运算时,`BigDecimal`提供了多种舍入模式,如`ROUND_UP`, `ROUND_DOWN`, `ROUND_HALF_EVEN`等,以决定结果如何处理超出精度的数字。 5. **不可变性**:同样,`BigDecimal`对象也是不可...

    BigDeclimal对大数据开根号Util

    2. **可配置舍入模式**:提供了多种舍入策略,如`ROUND_UP`、`ROUND_DOWN`等,可以根据需求调整结果的精确度。 3. **操作符重载**:支持加减乘除、比较、求幂等运算。 对于大数据开根号,由于没有直接的内置方法,...

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

    - ROUND_FLOOR:向负无穷方向舍入,正数按ROUND_DOWN处理,负数按ROUND_UP处理。 - ROUND_HALF_UP:四舍五入,如果舍弃部分等于0.5或大于0.5,则向上舍入。 - ROUND_HALF_DOWN:五舍六入,如果舍弃部分大于0.5,...

    BigInteger BigDecimal 使用

    `BigDecimal`提供了类似`BigInteger`的运算方法,但针对浮点数,还额外支持舍入模式(ROUND_UP、ROUND_DOWN等)来控制除法和取模运算的精度: ```java BigDecimal bd1 = new BigDecimal("10.5"); BigDecimal bd2 = ...

    java_double_精度

    BigDecimal 类提供了多种 roundingMode 来控制精度的取值方式,例如 ROUND_UP、ROUND_DOWN、ROUND_HALF_UP 等。我们可以根据实际需求选择合适的 roundingMode 来取值。 在实际项目中,我们经常需要对 double 类型的...

    js数据格式转化

    double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); ``` 2. **使用`DecimalFormat`**: 创建一个`DecimalFormat`对象,指定数字格式,然后使用`format()`方法: ```java DecimalFormat df =...

    java中double转化为BigDecimal精度缺失的实例

    - **设置合适的舍入模式**:在进行`setScale`操作时,可以指定不同的舍入模式,如`ROUND_HALF_UP`(四舍五入)或`ROUND_CEILING`(向上取整),根据需求选择合适的模式。 总结起来,`BigDecimal`是Java中用于高精度...

    ARCH4系统开发指南

    2.20.4.3.7 ROUND_HALF_UP 57 2.20.4.3.8 ROUND_HALF_EVEN 58 2.20.4.4 用BigDecimal进行除法运算 60 2.20.5 系统中精确计算的原则 60 2.21 金额的JS精确计算 60 2.22 根据语种取得代码名称 62 2.23 取兑换率的...

    关于java的四舍五入问题

    bd = bd.setScale(2, RoundingMode.HALF_UP); // 返回 "3.14" ``` 3. **`NumberFormat`和`DecimalFormat`**: 这些类主要用于格式化数字输出,它们也可以在格式化过程中进行四舍五入。例如: ```java ...

    java常用工具类 数字工具类

    该方法将输入的数字v转换为BigDecimal形式,然后使用ROUND_HALF_UP模式将其四舍五入到指定的小数位数scale。 5. format(double num) 方法:该方法用于四舍五入保留两位小数。该方法将输入的数字num转换为String形式...

Global site tag (gtag.js) - Google Analytics