BigDecimal.divide方法

java.math.BigDecimal.divide(BigDecimal divisor, int roundingMode) 返回一个BigDecimal,其值为(this/除数),其标度是this.scale()。如果必须执行舍入,以产生一个结果与给定的比例,将指定的舍入模式被应用。

声明

以下是java.math.BigDecimal.divide()方法的声明

public BigDecimal divide(BigDecimal divisor, int roundingMode)

参数

  • divisor - 值通过此BigDecimal被除
  • roundingMode - 舍入模式应用

返回值

此方法返回一个BigDecimal对象,其值是此/除数,四舍五入为指定的

异常

  • ArithmeticException - 如果除数==0,或RoundingMode== ROUND_UNNECESSARY和this.scale()是不足以表示除法运算的结果完全相同
  • IllegalArgumentException - 如果的RoundingMode不表示一个有效的舍入模式

例子

下面的示例演示math.BigDecimal.divide()方法的用法。

 点击链接查看详细内容

时间: 2024-08-08 01:27:28

BigDecimal.divide方法的相关文章

解决java.math.BigDecimal divide方法运算结果为无限小数问题

http://samueli.iteye.com/blog/224755 BigDecimal除法运算报错,错误如下:Non-terminating decimal expansion; no exact representable decimal result 原因是: BigDecimal divide(BigDecimal divisor, int scale, int roundingMode) if divisor is zero, roundingMode==ROUND_UNNECE

BigDecimal 使用方法详解

BigDecimal 使用方法详解 博客分类: java基础 bigdecimalmultiplyadddivide BigDecimal 由任意精度的整数非标度值 和 32 位的整数标度 (scale) 组成.如果为零或正数,则标度是小数点后的位数.如果为负数,则将该数的非标度值乘以 10 的负 scale 次幂.因此,BigDecimal 表示的数值是 (unscaledValue × 10-scale). 可以处理任意长度的浮点数运算. BigDecimal add(BigDecimal

【java】Java.math.BigDecimal.subtract()方法实例

java.math.BigDecimal.subtract(BigDecimal subtrahend) 返回一个BigDecimal,其值为 (this - subtrahend), 精度为 max(this.scale(), subtrahend.scale()). 声明 以下是声明java.math.BigDecimal.subtract()方法 public BigDecimal subtract(BigDecimal subtrahend) 参数: subtrahend - 此BigD

广告引擎解析

广告引擎 总体设计 检索服务 广告检索流程 广告定向 定向维度下的选项很少,可以枚举,这类定向包括,性别,年龄段,网络,系统. 我们的系统现在是如何处理这类定向的 定向维度有级联关系,省,市,区 定向维度是按照某个坐标附近N公里定向 检索服务是数据库的副本 CTR计算 计算二价 ADX广告 曝光服务 计费服务 计费服务主备 浮点数问题 广告引擎 总体设计 我们的基本架构是客户端请求API,然后由API发送RPC请求到我们的服务,服务通过注册中心来管理 检索服务,根据数据库中的广告建立索引,订阅R

bigdecimal类型数据的min方法

java.math.BigDecimal.min(BigDecimal val) 返回此BigDecimal和val的最小值. 声明 以下是java.math.BigDecimal.min()方法的声明 public BigDecimal min(BigDecimal val) 参数 val - 要计算最小值 返回值 此方法返回的值是此BigDecimal和val之间BigDecimal的较小者.如果它们相等,通过compareTo方法的定义,计算返回. 异常 NA 例子 下面的例子显示math

java BigDecimal add 等方法遇到的问题

1 //这篇随笔是为了提醒自己避免重复错误 2 3 4 5 //原先的代码是这样的,想着输出会是9.00,可是结果却是0.00 6 BigDecimal day_fee = new BigDecimal("0.00"); 7 day_fee.add( new BigDecimal("9.00")); 8 System.out.print("day_fee:" + day_fee); 9 10 //正确的代码应该是这样的,输出的是9.00,BigD

Java基础语法<五> 大数值BigInteger BigDecimal

如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有平有用的类:BigInteger和BigDecimal.这两个类可以处理包含任意长度数字序列的数值. BigInteger类实现了任意精度的整数运算 BigDecimal实现了任意精度的浮点数运算 使用静态的valueOf方法可以将普通的数值转换为大数值: BigInteger a = BigInteger.valueOf(100); 遗憾的是,不能使用人们熟悉的算术运算符(+ *)处理大数值. 而需要使用大数

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result异常的解决方法

今天在写一个JAVA程序的时候出现了异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.发现报错的语句是: 1 foo.divide(bar)); 原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常.解决方法:

Java从零开始学二十九(大数操作(BigIntger、BigDecimal)

一.BigInteger 如果在操作的时候一个整型数据已经超过了整数的最大类型长度long的话,则此数据就无法装入,所以,此时要使用BigInteger类进行操作. 不可变的任意精度的整数.所有操作中,都以二进制补码形式表示 BigInteger(如 Java 的基本整数类型).BigInteger 提供所有 Java 的基本整数操作符的对应物,并提供 java.lang.Math 的所有相关方法.另外,BigInteger 还提供以下运算:模算术.GCD 计算.质数测试.素数生成.位操作以及一