版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36336003/article/details/82817186
以前学c语言时就接触过%取模运算符,要求是%运算符两边必须为整数;
最近做一道java笔试题(如下)时,却发现浮点数能作为操作数
// 输出运行结果
public class Test3{
public static void main(String args[]){
System.out.println(100%3.0);
}
}
//输出为1.0
下面为一些测试例子:
EXPRESSION | RESULT | ANALYZE |
---|---|---|
5 % 3 | 2 | 5-(5/3)*3 |
5 % -3 | 2 | 5-(5/(-3))*3 |
-5 % 3 | -2 | 5-(5/3)*3 |
-5 % -3 | -2 | 5-(-5/(-3))*3 |
5.2 % 3 | 1.9999999999999996 | 5.2-(5.2/3)*3 |
总结:整数小数正数负数的取模运算都可使用下面公式计算:
a%b = a - (a/b)*b