java.math.BigDecimal常用方法

+构造函数

BigDecimal(BigInteger val)
将BigInteger转化为BigDecimal。

BigDecimal(BigInteger unscaledVal, int scale)
将BigInteger转换为BigDecimal。这个值为(unscaledVal &times; 10<sup>-scale</sup>)

BigDecimal(BigInteger unscaledVal, int scale, MathContext mc)
将BigInteger的值转换为BigDecimal,并进行舍入。这个值为(unscaledVal &times; 10<sup>-scale</sup>),并且通过mc设置的指定精度和舍入模式

BigDecimal(BigInteger val, MathContext mc)
根据上下文设置将BigInteger转换为BigDecimal。

BigDecimal(char[] in)
将字符数组表示BigDecimal转换为BigDecimal,接受与BigDecimal(String) 构造函数相同的字符序列。

BigDecimal(char[] in, int offset, int len)
将字符数组表示的BigDecimal转换为BigDecimal,接受与BigDecimal(String) 构造函数相同的字符序列,同时允许指定子数组。

BigDecimal(char[] in, int offset, int len, MathContext mc)
将字符数组表示的BigDecimal转换为BigDecimal,接受与BigDecimal(String) 构造函数相同的字符序列,同时允许指定子数组并根据上下文设置进行舍入。

BigDecimal(char[] in, MathContext mc)
将字符数组表示的BigDecimal转换为BigDecimal,接受与BigDecimal(String) 构造函数相同的字符序列,并根据上下文设置进行舍入。

BigDecimal(double val)
将a double转换为a 的二进制浮点值BigDecimal的精确十进制表示double。

BigDecimal(double val, MathContext mc)
根据上下文设置将double转换为BigDecimal,并进行舍入。

BigDecimal(int val)
将一个int转化成一个BigDecimal。

BigDecimal(int val, MathContext mc)
根据上下文设置将int转化为BigDecimal,并进行舍入。

BigDecimal(long val)
将long转化成BigDecimal。

BigDecimal(long val, MathContext mc)
根据上下文设置将long转换BigDecimal,并进行舍入。

BigDecimal(String val)
将字符串表示的BigDecimal转换为BigDecimal。

BigDecimal(String val, MathContext mc)
将字符串表示的BigDecimal转换为BigDecimal,接受与BigDecimal(String)构造函数相同的字符串 ,并根据上下文设置进行舍入。

+方法

BigDecimal abs()
返回BigDecimal值的绝对值BigDecimal。

BigDecimal abs(MathContext mc)
返回BigDecimal值的绝对值的BigDecimal,并根据上下文设置进行舍入。

BigDecimal add(BigDecimal augend)
返回值为(this + augend),且其比例为的值max(this.scale(), augend.scale())。

BigDecimal add(BigDecimal augend, MathContext mc)
返回值为(this + augend),根据上下文设置进行舍入。

byte byteValueExact()
将其转换BigDecimal为byte,并且检查丢失的信息。

int compareTo(BigDecimal val)
将BigDecimal与指定的val进行比较。

BigDecimal divide(BigDecimal divisor)
返回值为(this / divisor),其首选比例为(this.scale() - divisor.scale()); 如果无法表示确切的商(因为它具有非终止的十进制扩展),ArithmeticException则抛出一个。

BigDecimal divide(BigDecimal divisor, int roundingMode)
返回值为(this / divisor),且其比例为的值this.scale()。

BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
返回值为(this / divisor),并且其比例为指定的值。

BigDecimal divide(BigDecimal divisor, int scale, RoundingMode roundingMode)
返回值为(this / divisor),并且其比例为指定的值。

BigDecimal divide(BigDecimal divisor, MathContext mc)
返回值为(this / divisor),根据上下文设置进行舍入。

BigDecimal divide(BigDecimal divisor, RoundingMode roundingMode)
返回值为(this / divisor),且其比例为this.scale()的值。

BigDecimal[] divideAndRemainder(BigDecimal divisor)
返回一个两元素的BigDecimal数组,其中包含两个操作数相除的结果和余数(remainder)。

BigDecimal[] divideAndRemainder(BigDecimal divisor, MathContext mc)
返回一个两元素的BigDecimal数组,其中包含根据上下文设置通过舍入计算的两个操作数相除的结果和余数(remainder)。

BigDecimal divideToIntegralValue(BigDecimal divisor)
返回值是(this / divisor)向下舍入的商的整数部分。

BigDecimal divideToIntegralValue(BigDecimal divisor, MathContext mc)
返回值为(this / divisor)的整数部分的值。

double doubleValue()
将其转换BigDecimal为double。

boolean equals(Object x)
将当前BigDecimal与指定Object的相等性进行比较。

float floatValue()
将当前BigDecimal转换为float。

int hashCode()
返回此对象的哈希码。

int intValue()
将当前BigDecimal转换为int。

int intValueExact()
将当前BigDecimal转换为int,并检查丢失的信息。

long longValue()
将当前BigDecimal转换为long。

long longValueExact()
将挡墙BigDecimal转换为long,并检查丢失的信息。

BigDecimal max(BigDecimal val)
当前对象与val比较,返回较大的一个

BigDecimal min(BigDecimal val)
当前对象与val比较,返回较小的一个

BigDecimal movePointLeft(int n)
把当前值的小数点向左移动n个位置位置。

BigDecimal movePointRight(int n)
把当前值的小数点向右移动n个位置位置。

BigDecimal multiply(BigDecimal multiplicand)
返回(this×multiplicand),且其有效位为(this.scale() + multiplicand.scale())。

BigDecimal multiply(BigDecimal multiplicand, MathContext mc)
返回(this×multiplicand),并根据上下文设置进行舍入。

BigDecimal negate()
返回值为(-this),且其比例为的值this.scale()。

BigDecimal negate(MathContext mc)
返回值为(-this),根据上下文设置进行舍入。

BigDecimal plus()
返回值为(+this)(四舍五入),且其比例为的值this.scale()。

BigDecimal plus(MathContext mc)
返回值为(+this)(四舍五入),根据上下文设置进行舍入。

BigDecimal pow(int n)
返回值为(this<sup>n</sup>),精确计算功率,无限精度。

BigDecimal pow(int n, MathContext mc)
返回值为(this<sup>n</sup>)。

int precision()
返回这个BigDecimal的精确(小数有效位的个数)。

BigDecimal remainder(BigDecimal divisor)
返回值为(this % divisor)。

BigDecimal remainder(BigDecimal divisor, MathContext mc)
返回值为(this % divisor),根据上下文设置进行舍入。

BigDecimal round(MathContext mc)
BigDecimal根据MathContext设置返回舍入 。

int scale()
返回这个BigDecimal的规模。(规模值即小数位的数量)

BigDecimal scaleByPowerOfTen(int n)
返回一个BigDecimal,其数值等于(this* 10<sup>n</sup>)。

BigDecimal setScale(int newScale)
返回一个新的BigDecimal,并指定小数的个数。

BigDecimal setScale(int newScale, int roundingMode)
返回一个新的BigDecimal,并设置指定的小数位,以及舍入模式。

BigDecimal setScale(int newScale, RoundingMode roundingMode)
返回一个新的BigDecimal,并设置指定的小数位,以及舍入模式。

short shortValueExact()
将其转换为short,并检查丢失的信息。

int signum()
返回此BigDecimal的正负,-1,0,1。

BigDecimal stripTrailingZeros()
去掉小数点后无效的0。

BigDecimal subtract(BigDecimal subtrahend)
返回值为(this - subtrahend),且其小数位的个数为值max(this.scale(), subtrahend.scale())(较大的一个)。

BigDecimal subtract(BigDecimal subtrahend, MathContext mc)
返回值为(this - subtrahend),根据上下文设置进行舍入。

BigInteger toBigInteger()
将其转换为BigInteger。

BigInteger toBigIntegerExact()
将其转换为BigInteger,并检查丢失的信息。

String toEngineeringString()
BigDecimal如果需要指数,则使用工程符号返回此字符串表示形式。(指数要求是3的倍数)

String toPlainString()
返回BigDecimal不带指数字段的字符串表示形式。

String toString()
BigDecimal如果需要指数,则使用科学记数法返回此字符串表示形式。

BigDecimal ulp()
返回ulp的大小,如:10.003返回0.001

BigInteger unscaledValue()
返回BigInteger去掉小数后的值(保留小数后的值)。

static BigDecimal valueOf(double val)
将指定的double转化为BigDecimal

static BigDecimal valueOf(long val)
将指定的long转化为BigDecimal

static BigDecimal valueOf(long unscaledVal, int scale)
将long去掉小数后的值(保留小数后的值)和指定scale为小数的值,转换为BigDecimal。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书香水墨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值