Java那些事

取余还是取模?

2017-12-06  本文已影响5人  程序员必修课

取模和取余是两回事!

先上结论:

先看Java中的除法:

System.out.println(5 / 3);//1
System.out.println(5 / -3);//-1
System.out.println(-5 / 3);//-1
System.out.println(-5 / -3);//1

取余运算:

System.out.println(5 % 3);//2
System.out.println(5 % -3);//2
System.out.println(-5 % 3);//-2
System.out.println(-5 % -3);//-2
System.out.println(5.0 % 3.5);//1.5
System.out.println(5.0 % -3.5);//1.5
System.out.println(-5.0 % 3.5);//-1.5
System.out.println(-5.0 % -3.5);//-1.5

取模运算:

System.out.println(Math.floorMod(5, 3));//2
System.out.println(Math.floorMod(-5, 3));//1
System.out.println(Math.floorMod(5, -3));//-1
System.out.println(Math.floorMod(-5, -3));//-2

Math.floorMod()只支持int和long。

上一篇 下一篇

猜你喜欢

热点阅读