天天看点

java.math.BigDecimal方法汇总,函数用法介绍

java.math.BigDecimal方法摘要

变量和类型 方法 描述

BigDecimal

abs()

返回 

BigDecimal

其值是此的绝对值 

BigDecimal

 ,其标为 

this.scale()

 。

BigDecimal

abs​(MathContext mc)

返回 

BigDecimal

其值为此 

BigDecimal

的绝对值,并根据上下文设置进行舍入。

BigDecimal

add​(BigDecimal augend)

返回 

BigDecimal

其值为 

(this + augend)

 ,其比例为 

max(this.scale(), augend.scale())

 。

BigDecimal

add​(BigDecimal augend, MathContext mc)

返回 

BigDecimal

其值为 

(this + augend)

 ,根据上下文设置进行舍入。

byte

byteValueExact()

将 

BigDecimal

转换为 

byte

 ,检查是否丢失了信息。

int

compareTo​(BigDecimal val)

将此 

BigDecimal

与指定的 

BigDecimal

 。

BigDecimal

divide​(BigDecimal divisor)

返回

BigDecimal

其值为

(this / divisor)

 ,其首选比例为

(this.scale() - divisor.scale())

 ; 如果无法表示准确的商(因为它具有非终止的十进制扩展),则抛出

ArithmeticException

 。

BigDecimal

divide​(BigDecimal divisor, int roundingMode)

已过时。

应该优先使用方法

divide(BigDecimal, RoundingMode)

 ,而不是这种传统方法。

BigDecimal

divide​(BigDecimal divisor, int scale, int roundingMode)

已过时。

应该优先使用方法

divide(BigDecimal, int, RoundingMode)

来使用该传统方法。

BigDecimal

divide​(BigDecimal divisor, int scale,RoundingMode roundingMode)

返回 

BigDecimal

其值为 

(this / divisor)

 ,其比例为指定的比例。

BigDecimal

divide​(BigDecimal divisor,MathContext mc)

返回 

BigDecimal

其值为 

(this / divisor)

 ,根据上下文设置进行舍入。

BigDecimal

divide​(BigDecimal divisor,RoundingMode roundingMode)

返回 

BigDecimal

其值为 

(this / divisor)

 ,其比例为 

this.scale()

 。

BigDecimal[]

divideAndRemainder​(BigDecimal divisor)

返回一个两元件 

BigDecimal

阵列含有的结果 

divideToIntegralValue

 ,随后的结果 

remainder

上的两个操作数。

BigDecimal[]

divideAndRemainder​(BigDecimal divisor,MathContext mc)

返回一个两元件 

BigDecimal

阵列含有的结果 

divideToIntegralValue

 ,随后的结果 

remainder

上与根据上下文设置进行舍入计算出的两个操作数。

BigDecimal

divideToIntegralValue​(BigDecimal divisor)

返回 

BigDecimal

其值是 

(this / divisor)

舍入的商 

(this / divisor)

的整数部分。

BigDecimal

divideToIntegralValue​(BigDecimal divisor,MathContext mc)

返回 

BigDecimal

 ,其值是整数部分 

(this / divisor)

 。

double

doubleValue()

将 

BigDecimal

转换为 

double

 。

boolean

equals​(Object x)

将此 

BigDecimal

与指定的 

Object

进行相等性比较。

float

floatValue()

将 

BigDecimal

转换为 

float

 。

int

hashCode()

返回此 

BigDecimal

的哈希码。

int

intValue()

将 

BigDecimal

成 

int

 。

int

intValueExact()

将 

BigDecimal

转换为 

int

 ,检查是否丢失了信息。

long

longValue()

将 

BigDecimal

转换为 

long

 。

long

longValueExact()

将此 

BigDecimal

转换为 

long

 ,检查是否丢失了信息。

BigDecimal

max​(BigDecimal val)

返回 

BigDecimal

和 

val

 。

BigDecimal

min​(BigDecimal val)

返回 

BigDecimal

和 

val

 。

BigDecimal

movePointLeft​(int n)

返回一个 

BigDecimal

 ,相当于这个小数点向左移动 

n

位置。

BigDecimal

movePointRight​(int n)

返回一个 

BigDecimal

 ,相当于这个小数点向右移动 

n

位置。

BigDecimal

multiply​(BigDecimal multiplicand)

返回 

BigDecimal

其值为 

(this × multiplicand)

 ,其比例为 

(this.scale() + multiplicand.scale())

 。

BigDecimal

multiply​(BigDecimal multiplicand,MathContext mc)

返回 

BigDecimal

其值为 

(this × multiplicand)

 ,根据上下文设置进行舍入。

BigDecimal

negate()

返回 

BigDecimal

其值为 

(-this)

 ,其比例为 

this.scale()

 。

BigDecimal

negate​(MathContext mc)

返回 

BigDecimal

其值为 

(-this)

 ,根据上下文设置进行舍入。

BigDecimal

plus()

返回 

BigDecimal

其值为 

(+this)

 ,其比例为 

this.scale()

 。

BigDecimal

plus​(MathContext mc)

返回 

BigDecimal

其值为 

(+this)

 ,根据上下文设置进行舍入。

BigDecimal

pow​(int n)

返回 

BigDecimal

其值为 

(thisn)

 ,精确计算功率,精度无限制。

BigDecimal

pow​(int n, MathContext mc)

返回 

BigDecimal

其值为 

(thisn)

 。

int

precision()

返回此 

BigDecimal

的 精度 。

BigDecimal

remainder​(BigDecimal divisor)

返回 

BigDecimal

其值为 

(this % divisor)

 。

BigDecimal

remainder​(BigDecimal divisor,MathContext mc)

返回 

BigDecimal

其值为 

(this % divisor)

 ,根据上下文设置进行舍入。

BigDecimal

round​(MathContext mc)

返回 

BigDecimal

根据四舍五入 

MathContext

设置。

int

scale()

返回 

BigDecimal

的 比例 。

BigDecimal

scaleByPowerOfTen​(int n)

返回其数值等于( 

this

 * 10 n )的BigDecimal。

BigDecimal

setScale​(int newScale)

返回 

BigDecimal

其标度为指定值,其值在数值上等于此 

BigDecimal

 。

BigDecimal

setScale​(int newScale, int roundingMode)

已过时。

应该优先使用方法

setScale(int, RoundingMode)

来使用该传统方法。

BigDecimal

setScale​(int newScale,RoundingMode roundingMode)

返回 

BigDecimal

其比例为指定值,其未缩放值通过将此 

BigDecimal

值乘以或除以适当的10的幂来确定,以保持其总值。

short

shortValueExact()

将此 

BigDecimal

转换为 

short

 ,检查是否丢失了信息。

int

signum()

返回此 

BigDecimal

的signum函数。

BigDecimal

sqrt​(MathContext mc)

返回 

this

平方根的 

this

并根据上下文设置进行舍入。

BigDecimal

stripTrailingZeros()

返回 

BigDecimal

 ,它在数值上等于此值,但从表示中删除了任何尾随零。

BigDecimal

subtract​(BigDecimal subtrahend)

返回 

BigDecimal

其值为 

(this - subtrahend)

 ,其比例为 

max(this.scale(), subtrahend.scale())

 。

BigDecimal

subtract​(BigDecimal subtrahend,MathContext mc)

返回 

BigDecimal

其值为 

(this - subtrahend)

 ,根据上下文设置进行舍入。

BigInteger

toBigInteger()

将 

BigDecimal

转换为 

BigInteger

 。

BigInteger

toBigIntegerExact()

将 

BigDecimal

转换为 

BigInteger

 ,检查是否丢失了信息。

String

toEngineeringString()

如果需要指数,则使用工程符号返回此 

BigDecimal

的字符串表示形式。

String

toPlainString()

返回此 

BigDecimal

的字符串表示形式,不带指数字段。

String

toString()

如果需要指数,则使用科学计数法返回此 

BigDecimal

的字符串表示形式。

BigDecimal

ulp()

返回此 

BigDecimal

的ulp(最后一个单位)的 

BigDecimal

 。

BigInteger

unscaledValue()

返回 

BigInteger

其值是此的 非标度值 

BigDecimal

 。

staticBigDecimal

valueOf​(double val)

转换一个 

double

成 

BigDecimal

 ,使用 

double

通过所提供的规范的字符串表示 

Double.toString(double)

方法。

staticBigDecimal

valueOf​(long val)

将 

long

值转换为 

BigDecimal

 ,其标度为零。

staticBigDecimal

valueOf​(long unscaledVal, int scale)

将 

long

值和 

int

比例转换为 

BigDecimal

 。