本质:a % b = a - a /b * b; int num1 = 10 % 3;
//10-(10/3)*3==>10-3*3==>1
int num2 = -10 % 3;
//-10-((-10)/3)*3==>-10-(-3)*3==>-1
int num3 = 10 % -3;
//10-[(10)/(-3)]*(-3)==>10-(-3)*(-3)==>1
int num4 = -10 % -3;
//-10-[(-10)/(-3)]*(-3)==>-10-3*(-3)==>-1
System.out.println("num1="+num1);
System.out.println("num2="+num2);
System.out.println("num3="+num3);
System.out.println("num4="+num4);
注意:当a或者b为double(小数)时; 例:double a = 10.2; double b = a%3; //10.2-(10.2)/3*3 ==>10.2-概数(接近3.0的小数)*3 ==>10.2-概数(接近9.0的小数) ==>接近1.2的小数 System.out.println("b = "+b);