Java.math.BigDecimal.remainder() 方法



說明

java.math.BigDecimal.remainder(BigDecimal divisor, MathContext mc) 返回一個 BigDecimal,其值是 (this % divisor),並根據環境設定進行舍入。

MathContext 設定影響用於計算餘數的隱式除法。餘數本身的計算是精確的。因此,餘數可能包含多於 mc.getPrecision() 位數。

餘數由以下公式給出:this.subtract(this.divideToIntegralValue(divisor, mc).multiply(divisor))。這不是求模運算,即結果可能為負數。

宣告

以下是 java.math.BigDecimal.remainder() 方法的宣告。

public BigDecimal remainder(BigDecimal divisor, MathContext mc)

引數

  • divisor - 用以除以該 BigDecimal 的值。

  • mc - 要使用的環境。

返回值

此方法返回當 BigDecimal 物件除以除數(即 this % divisor)時,並在必要時進行舍入後的餘數。

異常

  • ArithmeticException - 如果 divisor == 0。

  • ArithmeticException - 如果結果不精確但舍入模式為 UNNECESSARY,或者 mc.precision > 0 且 this.divideToIntgralValue(divisor) 的結果需要 mc.precision 位數以上的精度。

示例

以下示例顯示了 math.BigDecimal.remainder() 方法的用法。

package com.tutorialspoint;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

      // create 3 BigDecimal Objects
      BigDecimal bg1, bg2, bg3;

      MathContext mc = new MathContext(2); // 2 precision

      bg1 = new BigDecimal("-144.144");
      bg2 = new BigDecimal("16.12");

      // bg2 divided by bg1 using mc gives bg3 as remainder
      bg3 = bg1.remainder(bg2, mc);

      String str = "The remainder is " + bg3;

      // print the value of bg3
      System.out.println( str );
   }
}

讓我們編譯並執行上述程式,它將產生以下結果 −

The remainder is -15.184
java_math_bigdecimal.htm
廣告