Java中的数学 floorMod() 方法
Java .lang.Math.floorMod()是Java中的内置数学函数,它返回传递给它的整数参数的下限模数。因此,底模为(a – (floorDiv(a, b) * b)) ,与除数 b 具有相同的符号,并且在-abs(b) < t < +abs(b)的范围内。
floorDiv 和 floorMod 的关系是:
floorDiv(a, b) * b + floorMod(a, b) == a
floorMod和%运算符之间的值差异是由于floorDiv返回小于或等于商的整数与返回最接近零的整数的/运算符之间的差异。
句法 :
public static int floorMod(data_type a, data_type b)
参数:该函数接受两个参数。
- a : 这是指股息价值。
- b :这是指除数。
参数可以是数据类型int或long 。
异常:如果除数为零,则抛出ArithmeticException 。
返回值:此方法返回地板模数 x – (floorDiv(x, y) * y)。
以下程序用于说明Java.lang.Math.floorMod() 方法的工作原理。
方案一:
// Java program to demonstrate working
// of java.lang.Math.floorMod() method
import java.lang.Math;
class Gfg1 {
public static void main(String args[])
{
int a = 25, b = 5;
System.out.println(Math.floorMod(a, b));
// Divisor and dividend is having same sign
int c = 123, d = 50;
System.out.println(Math.floorMod(c, d));
// Divisor is having negative sign
int e = 123, f = -50;
System.out.println(Math.floorMod(e, f));
// Dividend is having negative sign
int g = -123, h = 50;
System.out.println(Math.floorMod(g, h));
}
}
输出:
0
23
-27
27
方案二:
// Java program to demonstrate working
// of java.lang.Math.floorMod() method
import java.lang.Math;
class Gfg2 {
public static void main(String args[])
{
int x = 200;
int y = 0;
System.out.println(Math.floorMod(x, y));
}
}
输出:
Runtime Error :
Exception in thread "main" java.lang.ArithmeticException: / by zero
at java.lang.Math.floorDiv(Math.java:1052)
at java.lang.Math.floorMod(Math.java:1139)
at Gfg2.main(File.java:13)
参考: https: Java/lang/Math.html#floorMod-int-int-