Java-math-bigdecimal

提供:Dev Guides
移動先:案内検索

Java.math.BigDecimalクラス

前書き

*java.math.BigDecimal* クラスは、算術演算、スケール操作、丸め、比較、ハッシュ、および形式変換のための操作を提供します。

toString()メソッドは、BigDecimalの正規表現を提供します。 これにより、ユーザーは丸め動作を完全に制御できます。

BigDecimalのスケールを操作するために、2種類の操作が提供されます-

  • スケーリング/丸め操作
  • 小数点モーション操作

このクラスとそのイテレーターは、 Comparable インターフェースのすべてのオプションメソッドを実装します。

クラス宣言

以下は java.math.BigDecimal クラスの宣言です-

public class BigDecimal
   extends Number
      implements Comparable<BigDecimal>

フィールド

以下は java.math.BigDecimal クラスのフィールドです-

  • static BigDecimal ONE -スケール0の値1。
  • static int ROUND_CEILING -正の無限大に向かって丸める丸めモード。
  • static int ROUND_DOWN -ゼロに向かって丸める丸めモード。
  • static int ROUND_FLOOR -負の無限大に向かって丸める丸めモード。
  • static int ROUND_HALF_DOWN -両方のネイバーが等距離でない限り、「最近傍」に向かって丸める丸めモード。この場合は切り捨てられます。
  • static int ROUND_HALF_EVEN -両方の隣人が等距離でない限り、「最も近い隣人」に向かって丸める丸めモード。その場合、偶数隣人に向かって丸めます。
  • static int ROUND_HALF_UP -両方のネイバーが等距離でない限り、「最近傍」に向かって丸める丸めモード。
  • static int ROUND_UNNECESSARY -要求された操作に正確な結果があることをアサートするための丸めモード。したがって、丸めは必要ありません。
  • static int ROUND_UP -ゼロから切り捨てる丸めモード。
  • static BigDecimal TEN -スケール0の値10。
  • static BigDecimal ZERO -値0、スケール0。

クラスコンストラクター

Sr.No. Constructor & Description
1

BigDecimal(BigInteger val)

このコンストラクターは、BigIntegerをBigDecimalに変換するために使用されます。

2

BigDecimal(BigInteger unscaledVal, int scale)

このコンストラクターは、BigIntegerのスケールなしの値とintスケールをBigDecimalに変換するために使用されます。

3

BigDecimal(BigInteger unscaledVal, int scale, MathContext mc)

このコンストラクターは、コンテキスト設定に従った丸めを使用して、BigIntegerのスケールなしの値とintスケールをBigDecimalに変換するために使用されます。

4

BigDecimal(BigInteger val, MathContext mc)

このコンストラクターは、コンテキスト設定に従ってBigIntegerをBigDecimal丸めに変換するために使用されます。

5

BigDecimal(char[ ] in)

このコンストラクターは、BigDecimalの文字配列表現をBigDecimalに変換するために使用され、BigDecimal(String)コンストラクターと同じ文字シーケンスを受け入れます。

6

BigDecimal(char[ ] in, int offset, int len)

このコンストラクターを使用して、BigDecimalの文字配列表現をBigDecimalに変換し、BigDecimal(String)コンストラクターと同じ文字シーケンスを受け入れ、サブ配列を指定できるようにします。

7

BigDecimal(char[ ] in, int offset, int len, MathContext mc)

このコンストラクターは、BigDecimalの文字配列表現をBigDecimalに変換するために使用されます。BigDecimal(String)コンストラクターと同じ文字シーケンスを受け入れ、サブ配列を指定し、コンテキスト設定に従って丸めます。

8

BigDecimal(char[ ] in, MathContext mc)

このコンストラクターは、BigDecimalの文字配列表現をBigDecimalに変換するために使用され、BigDecimal(String)コンストラクターと同じ文字シーケンスを受け入れ、コンテキスト設定に従って丸めます。

9

BigDecimal(double val)

このコンストラクタは、doubleを、doubleのバイナリ浮動小数点値の正確な10進表現であるBigDecimalに変換するために使用されます。

10

BigDecimal(double val, MathContext mc)

このコンストラクターは、コンテキスト設定に従った丸めを使用して、doubleをBigDecimalに変換するために使用されます。

11

BigDecimal(int val)

このコンストラクタは、intをBigDecimalに変換するために使用されます。

12

BigDecimal(int val, MathContext mc)

このコンストラクターは、コンテキスト設定に従った丸めを使用して、intをBigDecimalに変換するために使用されます。

13

BigDecimal(long val)

このコンストラクタは、longをBigDecimalに変換するために使用されます。

14

BigDecimal(long val, MathContext mc)

このコンストラクターは、BigIntegerをBigDecimalに変換するために使用されます。

15

BigDecimal(String val)

このコンストラクターは、BigDecimalをBigDecimalにストリング表現するために使用されます。

16

BigDecimal(String val, MathContext mc)

このコンストラクタは、BigDecimalの文字列表現をBigDecimalに変換するために使用され、BigDecimal(String)コンストラクタと同じ文字列を受け入れ、コンテキスト設定に従って丸めます。

クラスメソッド

Sr.No. Method & Description
1

BigDecimal abs()

このメソッドは、値がこのBigDecimalの絶対値であり、スケールがthis.scale()であるBigDecimalを返します。

2

BigDecimal abs(MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値がこのBigDecimalの絶対値であるBigDecimalを返します。

3

BigDecimal add(BigDecimal augend)

このメソッドは、値が(this + augend)で、スケールがmax(this.scale()、augend.scale())であるBigDecimalを返します。

4

BigDecimal add(BigDecimal augend, MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(this + augend)であるBigDecimalを返します。

5

byte byteValueExact()

このメソッドはBigDecimalをバイトに変換し、失われた情報をチェックします。

6

int compareTo(BigDecimal val)

このメソッドは、BigDecimalと指定されたBigDecimalを比較します。

7

BigDecimal divide(BigDecimal divisor)

このメソッドは、値が(this/divisor)で、優先スケールが(this.scale()-divisor.scale());であるBigDecimalを返します。正確な商を表すことができない場合(終了しない10進展開があるため)、ArithmeticExceptionがスローされます。

8

BigDecimal divide(BigDecimal divisor, int roundingMode)

このメソッドは、値が(this/divisor)でスケールがthis.scale()であるBigDecimalを返します。

9

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

このメソッドは、値が(this/divisor)で、スケールが指定されているBigDecimalを返します。

10

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

このメソッドは、値が(this/divisor)で、スケールが指定されているBigDecimalを返します。

11

BigDecimal divide(BigDecimal divisor, MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(this/divisor)であるBigDecimalを返します。

12

BigDecimal divide(BigDecimal divisor, RoundingMode roundingMode)

このメソッドは、値が(this/divisor)でスケールがthis.scale()であるBigDecimalを返します。

13

BigDecimal[ divideAndRemainder(BigDecimal divisor)]

このメソッドは、divideToIntegralValueの結果とそれに続く2つのオペランドの剰余の結果を含む2要素BigDecimal配列を返します。

14

BigDecimal[ divideAndRemainder(BigDecimal divisor, MathContext mc)]

このメソッドは、divideToIntegralValueの結果を含む2要素BigDecimal配列を返し、その後にコンテキスト設定に従って丸めて計算された2つのオペランドの剰余の結果が続きます。

15

BigDecimal divideToIntegralValue(BigDecimal divisor)

このメソッドは、値が切り捨てられた商(this/divisor)の整数部分であるBigDecimalを返します。

16

BigDecimal divideToIntegralValue(BigDecimal divisor, MathContext mc)

このメソッドは、値が(this/divisor)の整数部であるBigDecimalを返します。

17

double doubleValue()

このメソッドは、BigDecimalをdoubleに変換します。

18

boolean equals(Object x)

このメソッドは、BigDecimalと指定されたオブジェクトが等しいかどうかを比較します。

19

float floatValue()

このメソッドは、BigDecimalをfloatに変換します。

20

int hashCode()

このメソッドは、このBigDecimalのハッシュコードを返します。

21

int intValue()

このメソッドは、BigDecimalをintに変換します。

22

int intValueExact()

このメソッドはBigDecimalをintに変換し、失われた情報をチェックします。

23

long longValue()

このメソッドは、BigDecimalをlongに変換します。

24

long longValueExact()

このメソッドはBigDecimalを長い情報に変換し、失われた情報をチェックします。

25

BigDecimal max(BigDecimal val)

このメソッドは、このBigDecimalとvalの最大値を返します。

26

BigDecimal min(BigDecimal val)

このメソッドは、このBigDecimalとvalの最小値を返します。

27

BigDecimal movePointLeft(int n)

このメソッドは、小数点をn桁左に移動したものと同等のBigDecimalを返します。

28

BigDecimal movePointRight(int n)

このメソッドは、小数点をn桁右に移動したものと同等のBigDecimalを返します。

29

BigDecimal multiply(BigDecimal multiplicand)

このメソッドは、値が(this×multiplicand)で、スケールが(this.scale()+ multiplicand.scale())であるBigDecimalを返します。

30

BigDecimal multiply(BigDecimal multiplicand, MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(this×multiplicand)であるBigDecimalを返します。

31

BigDecimal negate()

このメソッドは、値が(+ this)でスケールがthis.scale()であるBigDecimalを返します。

32

BigDecimal negate(MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(-this)のBigDecimalを返します。

33

BigDecimal plus()

このメソッドは、値が(+ this)でスケールがthis.scale()であるBigDecimalを返します。

34

BigDecimal plus(MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(+ this)のBigDecimalを返します。

35

BigDecimal pow(int n)

このメソッドは、値が(this ^ n ^)であるBigDecimalを返します。累乗は正確に計算され、精度は無制限です。

36

BigDecimal pow(int n, MathContext mc)

このメソッドは、値が(this ^ n ^)であるBigDecimalを返します。

37

int precision()

このメソッドは、このBigDecimalの精度を返します。

38

BigDecimal remainder(BigDecimal divisor)

このメソッドは、このBigDecimalをバイトに変換し、失われた情報をチェックします。

39

BigDecimal remainder(BigDecimal divisor, MathContext mc)

このメソッドは、値が(this%divisor)であるBigDecimalを、コンテキスト設定に従って丸めて返します。

40

BigDecimal round(MathContext mc)

このメソッドは、MathContext設定に従って丸められたBigDecimalを返します。

41

int scale()

このメソッドは、このBigDecimalのスケールを返します。

42

BigDecimal scaleByPowerOfTen(int n)

このメソッドは、数値が(this * 10 ^ n ^)に等しいBigDecimalを返します。

43

BigDecimal setScale(int newScale)

このメソッドは、スケールが指定された値であり、値がこのBigDecimalの数値と等しいBigDecimalを返します。

44

BigDecimal setScale(int newScale, int roundingMode)

このメソッドは、スケールが指定された値であるBigDecimalを返し、そのスケールなしの値は、このBigDecimalのスケールなしの値を適切な10の累乗で乗算または除算することで決定されます。

45

BigDecimal setScale(int newScale, RoundingMode roundingMode)

このメソッドは、スケールが指定された値であるBigDecimalを返し、そのスケールなしの値は、このBigDecimalのスケールなしの値を適切な10の累乗で乗算または除算することで決定されます。

46

short shortValueExact()

このメソッドは、BigDecimalを短いものに変換し、失われた情報をチェックします。

47

int signum()

このメソッドは、このBigDecimalのsignum関数を返します。

48

BigDecimal stripTrailingZeros()

このメソッドは、数値的にはこれと等しいが、表現から末尾のゼロが削除されたBigDecimalを返します。

49

BigDecimal subtract(BigDecimal subtrahend)

このメソッドは、値が(this-subtrahend)でスケールがmax(this.scale()、subtrahend.scale())であるBigDecimalを返します。

50

BigDecimal subtract(BigDecimal subtrahend, MathContext mc)

このメソッドは、コンテキスト設定に従った丸めを使用して、値が(this-subtrahend)であるBigDecimalを返します。

51

BigInteger toBigInteger()

このメソッドは、BigDecimalをBigIntegerに変換します。

52

BigInteger toBigIntegerExact()

このメソッドはBigDecimalをBigIntegerに変換し、失われた情報をチェックします。

53

String toEngineeringString()

このメソッドは、指数が必要な場合に工学表記法を使用して、このBigDecimalの文字列表現を返します。

54

String toPlainString()

このメソッドは、指数フィールドなしでこのBigDecimalの文字列表現を返します。

55

String toString()

このメソッドは、指数が必要な場合は科学表記法を使用して、このBigDecimalの文字列表現を返します。

56

BigDecimal ulp()

このメソッドは、このBigDecimalの最後の場所の単位であるulpのサイズを返します。

57

BigInteger unscaledValue()

このメソッドは、値がこのBigDecimalのスケーリングされていない値であるBigIntegerを返します。

58

static BigDecimal valueOf(double val)

このメソッドは、Double.toString(double)メソッドによって提供されるdoubleの正規の文字列表現を使用して、doubleをBigDecimalに変換します。

59

static BigDecimal valueOf(long val)

このメソッドは、long値をスケールがゼロのBigDecimalに変換します。

60

static BigDecimal valueOf(long unscaledVal, int scale)

このメソッドは、長いスケールなしの値と整数スケールをBigDecimalに変換します。