Java Math IEEEremainder ()

Метод 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 () и% Operator

Остаток, возвращаемый как Math.IEEEremainder()методом, так и %оператором, равен arg1 - arg2 * n. Однако значение n другое.

  • IEEEremainder () - n - ближайшее целое число к arg1/arg2. И, если arg1/arg2возвращает значение между двумя целыми числами, n будет четным целым числом (например, для результата 1.5 n = 2).
  • Оператор% - n - целая часть arg1/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

Интересные статьи...