Java中的相除(/)和取余(%)的實(shí)現(xiàn)方法
取模運(yùn)算與取余運(yùn)算兩個概念有重疊的部分但又不完全一致。主要的區(qū)別在于對負(fù)整數(shù)進(jìn)行除法運(yùn)算時操作不同。
對于整形數(shù)a,b來說,取模運(yùn)算或者求余運(yùn)算的方法都是:
1、求 整數(shù)商 c = a / b;
2、計(jì)算模或者余數(shù) r = a - c* b .
取模運(yùn)算和取余運(yùn)算在第一步不同:
取余運(yùn)算在取c值時,向0方向舍入;而取模運(yùn)算在取c值時,是向負(fù)無窮方向舍入
各個環(huán)境下運(yùn)算符%的含義不同,C/C++,Java為取余,python為取模
Java取余運(yùn)算規(guī)則如下:
a%b = a - (a/b)*b
讓我們先看一段代碼:
public class Division_remainder { public static void main(String[] args) { int a = 13 / 5; int b = 13 % 5; int c = 5 / 13; int d = 5 % 13; int e = 13 / -5; int f = -13 / 5; int h = -13 % 5; int j = 13 % -5; System.out.println(a + "," + b); System.out.println(c + "," + d); System.out.println(e + "," + f); System.out.println(h + "," + j); }
結(jié)果為:
2,3
0,5
-2,-2
-3,3
再來一個一個分析:
a = 13 / 5,a = 2,其實(shí)就是數(shù)學(xué)上的13 / 5 ,結(jié)果為2。
b = 13 % 5,b = 3,這也是數(shù)學(xué)上的運(yùn)算,得出余數(shù)為3。
c = 5 / 13,c = 0,因?yàn)楸怀龜?shù)小于除數(shù),結(jié)果可以看成0.x,但是int類型是整數(shù)類型,所以結(jié)果只為0。
d = 5 % 13,d = 5,數(shù)學(xué)上規(guī)定:如果被除數(shù)比除數(shù)小,商是0,余數(shù)就是被除數(shù)本身。
e和f不用說了,結(jié)果都為-2。
但是h和j怎么是一個-3一個3呢,因?yàn)槿∮噙\(yùn)算的符號是根據(jù)第一個運(yùn)算數(shù)決定的,-13 % 5結(jié)果是-3,而13 % -5結(jié)果則是3。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Springboot項(xiàng)目接口限流實(shí)現(xiàn)方案
這篇文章主要介紹了Springboot項(xiàng)目接口限流實(shí)現(xiàn)方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08mybatis plus開發(fā)過程中遇到的問題記錄及解決
這篇文章主要介紹了mybatis plus開發(fā)過程中遇到的問題記錄及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07java實(shí)現(xiàn)Rabbitmq延遲隊(duì)列和惰性隊(duì)列
本文主要介紹了java實(shí)現(xiàn)Rabbitmq延遲隊(duì)列和惰性隊(duì)列,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12基于java配置nginx獲取真實(shí)IP代碼實(shí)例
這篇文章主要介紹了基于java配置nginx獲取真實(shí)IP代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Java Integer[]和int[]互相轉(zhuǎn)換方式
這篇文章主要介紹了Java Integer[]和int[]互相轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12- 本文給大家分享的是一則使用java編寫的文件管理器的代碼,新人練手的作品,邏輯上還是有點(diǎn)小問題,大家?guī)兔纯窗伞?/div> 2015-04-04
最新評論