📜  Java数学IEEEremainder()

📅  最后修改于: 2020-09-27 01:03:39             🧑  作者: Mango

Java Math IEEEremainder()方法对指定的参数执行除法运算,并根据IEEE 754标准返回余数。

IEEEremainder()方法的语法为:

Math.IEEEremainder(double x, double y)

注意IEEEremainder()方法是静态方法。因此,我们可以使用类名Math直接调用该方法。


IEEEremainder()参数
  • x-除以y的股息
  • y-除以x的除数

IEEEremainder()返回值
  • 根据IEEE 754标准返回余数

示例1:Java Math.IEEEremainder()
class Main {
  public static void main(String[] args) {

    // declare variables
    double  arg1 = 25.0;
    double arg2 = 3.0;

    // perform Math.IEEEremainder() on arg1 and arg2
    System.out.println(Math.IEEEremainder(arg1, arg2));  // 1.0
  }
}

Math.IEEEremainder()和%运算符之间的区别

Math.IEEEremainder()方法和% 运算符返回的余数等于arg1 - arg2 * n 。但是, n的值不同。

  • IEEEremainder()n最接近arg1/arg2整数。并且,如果arg1/arg2返回两个整数之间的值,则n为偶数整数(即,对于结果1.5,n = 2)。
  • % 运算符 -narg1/arg2的整数部分(对于结果1.5,n = 1)。
class Main {
  public static void main(String[] args) {

    // declare variables
    double  arg1 = 9.0;
    double arg2 = 5.0;

    // using Math.IEEEremainder()
    System.out.println(Math.IEEEremainder(arg1, arg2));  // -1.0

    // using % operator
    System.out.println(arg1 % arg2);  // 4.0
  }
}

在上面的示例中,我们可以看到IEEEremainder()方法和% 运算符返回的余数值不同。这是因为,

对于Math.IEEEremainder()

arg1/arg2
=> 1.8

   // for IEEEremainder()
   n = 2
   arg - arg2 * n
=> 9.0 - 5.0 * 2.0
=> -1.0

对于% 运算符

arg1/arg2
=> 1.8

   // for % operator
   n = 1
   arg1 - arg2 * n
=> 9.0 - 5.0 * 1.0
=> 4.0