Java中 % 与Math.floorMod() 区别详解
%为取余(rem),Math.floorMod()为取模(mod)
取余取模有什么区别呢?
对于整型数a,b来说,取模运算或者取余运算的方法都是:
1.求整数商:c=a/b;
2.计算模或者余数:r=a-c*b.
区别是:
取余运算在计算商值向0方向舍弃小数位
取模运算在计算商值向负无穷方向舍弃小数位
比如a=4,b=-3时,a/b=-1.3333...
此时,取余c=1,取模c=-2
(%在不同语言中有不同的意义,比如Java或者c/c++中%为取余,python中%则为取模)
%(取余)运算:
1、结果的符号:结果的符号与被除数的符号相同,例:x%y中为x的符号(结果的绝对值与x、y都为正数时相同)
2、x%y中如果x 3、0%x结果为0 4、x%0除0错误 Math.floorMod(x,y)(取模): 1、简单记忆:与y符号相同 2、x>y:结果的绝对值与%运算相同 3、x 补充知识:java.lang.Math 了解和记录一下math类的各种方法,以便以后查找 math.sin:求出sin值 math.cos:求出cos值 math.tan:求出tan值 sinθ=cosθ*tanθ math.asin:根据sin值求角度 math.acos:根据cos值求角度 math.atan:根据tan值求角度 math.toRadians:根据角度求弧度 math.toDegree:根据弧度求角度 math.exp:E的X幂 math.log:以E为底的对数 math.log10:以10为底的对数 math.sqrt:x的二次方根 math.cbrt:x的三次方根 math.IEEEremainder:根据规定的两个参数计算剩余操作 *根据ieee754标准。 math.ceil:返回最近的且大于的整数 math.floor:返回最近的且小于的整数 math.rint:返回最接近的整数,如果刚好居中,则取偶数 math.atan2:结果angel是一个弧度值,也可以表示相对直角三角形对角的角,其中x是临边边长,而y是对边边长,计算两点间连线的夹角.(3,3)和(5,5)和原点构成的线的夹角,math.atan2(3-5,3-5),计算出来是弧度值,再转成角度即可。 math.pow:x的y次幂 math.round:跟四舍五入很像,但是不是。小数点后等于5,取整数,正数,整数+1,负数,整数不变,大于5,整数部分+1,正负号不变,小于5,取整数 math.random:随机返回0-1之间的无符号double值 math.addExact:求int和long的和值,超过范围则抛异常 math.substractExact:求int和Long的差值,超出范围则抛异常 math.multiplyExact:求int和long的乘值,超出范围则抛异常 math.incrementExact:求int和long的+1值,超出范围则抛异常 math.decrementExact:求int和Long的-1值,超出范围则抛异常 math.negateExact:求int和long的取反值,超出范围则抛异常 math.toIntExact:求Long的int值,超出范围则抛异常 math.floorDiv:第一个参数除以第二参数,然后针对结果执行floor操作,返回小于或等于商的整数 math.floorMod:returnx-floorDiv(x,y)*y; math.abs:取绝对值 math.max:取最大值 math.min:取最小值 math.sinh:双曲正弦函数sinh(x)=(exp(x)-exp(-x))/2.0 math.cosh:双曲余弦函数cosh(x)=(exp(x)+exp(-x))/2.0 math.tanh:tanh(x)=sinh(x)/cosh(x) 以上这篇Java中%与Math.floorMod()区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。 声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
-
+
-
+
+
-
+
-
-
-
-
-
+
+
+
+