java 如何获取余数
获取余数的方法
在Java中,获取余数可以通过取模运算符 % 实现。取模运算返回两个数相除后的余数。

int dividend = 10; // 被除数
int divisor = 3; // 除数
int remainder = dividend % divisor; // 余数
System.out.println(remainder); // 输出: 1
处理负数的情况
取模运算的结果符号与被除数一致。若被除数为负数,余数也为负数。

int negativeDividend = -10;
int remainderNegative = negativeDividend % divisor; // 余数为 -1
System.out.println(remainderNegative); // 输出: -1
使用 Math.floorMod 方法
Math.floorMod 方法提供与数学定义一致的余数结果(符号与除数一致),适用于需要非负余数的场景。
int floorModResult = Math.floorMod(dividend, divisor); // 余数为 1
int floorModNegative = Math.floorMod(negativeDividend, divisor); // 余数为 2
System.out.println(floorModResult); // 输出: 1
System.out.println(floorModNegative); // 输出: 2
浮点数的余数计算
对于浮点数,同样可以使用 % 运算符,或 Math.IEEEremainder 方法(遵循IEEE 754标准)。
double doubleDividend = 10.5;
double doubleDivisor = 3.2;
double doubleRemainder = doubleDividend % doubleDivisor; // 余数为 0.8999999999999995
System.out.println(doubleRemainder);
double ieeeRemainder = Math.IEEEremainder(doubleDividend, doubleDivisor); // 余数为 0.9
System.out.println(ieeeRemainder);
注意事项
- 取模运算的除数不能为0,否则会抛出
ArithmeticException。 Math.floorMod和Math.IEEEremainder提供了更规范的余数计算方式,适用于特定需求场景。






