您好,登錄后才能下訂單哦!
小編給大家分享一下Java中如何實現取模運算,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1.實現算法
public static double ramainder(double dividend, double dividor) { return dividend - dividend / dividor * dividor; }
2.java的取模運算支持類型:字符型(自然不包括負數)、字節型、短整型、整型、長整型、單精度浮點型、雙精度浮點型.
算法同上
取模運算支持類型:字符型(不包括負數)、字節型、短整型、整型、長整型、布爾類型(除數不能為false,原因在C++中,true表示1,false表示0,自然除數不能為0;).
先看一段代碼:
public static void main(String[] args) { int arrs[] = { 2, 1, 0, -1, -2 }; for (int i = 0; i < arrs.length; i++) { System.out.println(arrs[i] + (arrs[i] % 2 == 1 ? "是奇數" : "是偶數")); } }
很顯然是一段判斷奇偶性的代碼,但是結果可能大家都能看得出來.
2是偶數1是奇數0是偶數-1是偶數-2是偶數
為什么-1會是偶數呢? 原因就是取模運算的實現算法導致的.
System.out.println(arrs[i] + (arrs[i] % 2 == 1 ? "是奇數" : "是偶數")); //修改為: System.out.println(arrs[i] + (arrs[i] % 2 == 0 ? "是偶數" : "是奇數"));
給我一個警示:在以后的奇偶判斷使用中,使用偶數進行判斷代替使用奇數.
(同樣的現象C++中也是一樣)
如:
-10 % 3 => -10 - (-10)/ 3 * 3 = -10 + 9 = -1
本質就是-10能夠加減多少個3能最接近0,-10肯定要加三個3,就等于-1接近0
10 % -3 => 10 - 10 / (-3) * (-3) = 10 - 9 = 1
本質就是10加減多少-3能最接近0,10肯定要加三個-3,就等于1接近0
-10 % -3 => -10 - (-10) / (-3) * (-3) = -10 + 9 = -1
本質就是-10能夠加減多少個-3能最接近0,-10肯定要減三個-3,就等于-1接近0
當a為負數時:
如:
-10.5%3 = -10.5 - (-10) / 3 * 3 = -10.5 + 9 = -1.5
以上是“Java中如何實現取模運算”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。