1. 程式人生 > >java中的取整(/)和求餘( )

java中的取整(/)和求餘( )

               

1.取整運算子

取整從字面意思理解就是被除數到底包含幾個除數,也就是能被整除多少次,那麼它有哪些需要注意的地方呢?先看下面的兩端程式碼:
        int a = 10;     int b = 3;     double
c= a / b;        System.out.println(c);
第一段程式碼的執行結果是3.0, 其中double c = a / b;//c = (10/3) = (double)3 = 3.0,這裡面涉及到一個低精度到高精度的隱式裝換。

        int a = 10;     int
b = 3;     double c= (double)a / b;        System.out.println(c);
第二段程式碼的執行結果是3.3333333333333335,其中double c = (double)a / b;等價於double c= 10.0 / 3.0; 減乘除計算,會先統一運算元的精度,其規則是先統一成精度高的數。
double型/int型、int型/double型,最後都轉成double型/double型。


2.求餘運算子

取餘運算子是%是一個雙目運算子,它的運算元通常是正整數也可以是負數甚至是浮點數,如果負數參與此運算,則結果的正負取決於前面一個數是整數還是負數 對於整數,java的取餘運算規則如下 
a%b=a-(a/b)*b 
5%3=5-(5/3)*3=2 
5%-3=5-(5/-3)*-3=2 
-5%3=-5-(-5/3)*3=-2 
-5%-3=-5-(-5/-3)*-3=-2 
如果運算元中有浮點數則採用的規則為 
a%b=a-(b*q),這裡q=int(a/b) 
5.2%3.1=5.2-1*3.1=2.1 
5.2%-3.1=5.2-(-1)*(-3.1)=2.1 
-5.2%3.1=-5.1-(-1)*3.1=-2.1 
-5.2%-3.1=-5.1-(-1)*(-3.1)=-2.1 


           

再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://blog.csdn.net/jiangjunshow