java中的自增(++)和自減(--)運(yùn)算符

java中的自增(++)和自減(--)運(yùn)算符

ID:11049962

大?。?4.86 KB

頁(yè)數(shù):6頁(yè)

時(shí)間:2018-07-09

java中的自增(++)和自減(--)運(yùn)算符_第1頁(yè)
java中的自增(++)和自減(--)運(yùn)算符_第2頁(yè)
java中的自增(++)和自減(--)運(yùn)算符_第3頁(yè)
java中的自增(++)和自減(--)運(yùn)算符_第4頁(yè)
java中的自增(++)和自減(--)運(yùn)算符_第5頁(yè)
資源描述:

《java中的自增(++)和自減(--)運(yùn)算符》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、有些運(yùn)算符在JAVA語(yǔ)言中存在著,但是在實(shí)際開(kāi)發(fā)中我們或許很少用到它們,在面試題中卻時(shí)常出現(xiàn)它們的身影,對(duì)于這些運(yùn)算符的含義和用法,你是否還記得呢?自增(++)和自減(--)運(yùn)算符我們先來(lái)回答幾個(gè)問(wèn)題吧:Java代碼1.int?i?=?0;??2.int?j?=?i++;??3.int?k?=?--i;??inti=0;intj=i++;intk=--i;這段代碼運(yùn)行后,i等于多少?j等于多少?k等于多少?太簡(jiǎn)單了?好,繼續(xù):Java代碼1.int?i?=?0;??2.int?j?=?i++?+?++i;??3.int?k?=?--i?+?i--;??inti=0;

2、intj=i+++++i;intk=--i+i--;代碼執(zhí)行后i、j、k分別等于多少呢?還是很簡(jiǎn)單?好,再繼續(xù):Java代碼1.int?i=0;??2.System.out.println(i++);??inti=0;System.out.println(i++);這段代碼運(yùn)行后輸出結(jié)果是什么?0?1?Java代碼1.float?f=0.1F;??2.f++;??3.double?d=0.1D;??4.d++;??5.char?c='a';??6.c++;??floatf=0.1F;f++;doubled=0.1D;d++;charc='a';c++;上面這段代碼可

3、以編譯通過(guò)嗎?為什么?如果你能順利回答到這里,說(shuō)明你對(duì)自增和自減運(yùn)算符的掌握已經(jīng)很好了。為了分析出上面提出的幾個(gè)問(wèn)題,我們首先來(lái)回顧一下相關(guān)知識(shí):·自增(++):將變量的值加1,分前綴式(如++i)和后綴式(如i++)。前綴式是先加1再使用;后綴式是先使用再加1?!ぷ詼p(--):將變量的值減1,分前綴式(如--i)和后綴式(如i--)。前綴式是先減1再使用;后綴式是先使用再減1。在第一個(gè)例子中,intj=i++;是后綴式,因此i的值先被賦予j,然后再自增1,所以這行代碼運(yùn)行后,i=1、j=0;而intk=--i;是前綴式,因此i先自減1,然后再將它的值賦予k,因此這

4、行代碼運(yùn)行后,i=0、k=0。在第二個(gè)例子中,對(duì)于intj=i+++++i;,首先運(yùn)行i++,i的值0被用于加運(yùn)算(+),之后i自增值變?yōu)?,然后運(yùn)行++i,i先自增變?yōu)?,之后被用于加運(yùn)算,最后將i兩次的值相加的結(jié)果1+2=3賦給j,因此這行代碼運(yùn)行完畢后i=2、j=2;對(duì)于intk=--i+i--;用一樣的思路分析,具體過(guò)程在此不再贅述,結(jié)果應(yīng)該是i=0、k=2。自增與自減運(yùn)算符還遵循以下規(guī)律:1.可以用于整數(shù)類型byte、short、int、long,浮點(diǎn)類型float、double,以及字符串類型char。2.在Java5.0及以上版本中,它們可以用于基本類

5、型對(duì)應(yīng)的包裝器類Byte、Short、Integer、Long、Float、Double、Character。3.它們的運(yùn)算結(jié)果的類型與被運(yùn)算的變量的類型相同。下面的這個(gè)例子驗(yàn)證以上列出的規(guī)律,它可以編譯通過(guò)并執(zhí)行。Java代碼1.public?class?Test?{??2.????public?static?void?main(String[]?args)?{??3.????????//?整型??4.????????byte?b?=?0;??5.????????b++;??6.????????//?整型??7.????????long?l?=?0;??8.???

6、?????l++;??9.????????//?浮點(diǎn)型??10.????????double?d?=?0.0;??11.????????d++;??12.????????//?字符串??13.????????char?c?=?'a';??14.????????c++;??15.????????//?基本類型包裝器類??16.????????Integer?i?=?new?Integer(0);??17.????????i++;??1.????}??2.}??publicclassTest{publicstaticvoidmain(String[]args){//整型

7、byteb=0;b++;//整型longl=0;l++;//浮點(diǎn)型doubled=0.0;d++;//字符串charc='a';c++;//基本類型包裝器類Integeri=newInteger(0);i++;}}按位運(yùn)算符你還能說(shuō)出來(lái)按位運(yùn)算符一共有哪幾種嗎?對(duì)比下面的列表看看,有沒(méi)有從你的記憶中消失了的:1.按位與運(yùn)算(&):二元運(yùn)算符。當(dāng)被運(yùn)算的兩個(gè)值都為1時(shí),運(yùn)算結(jié)果為1;否則為0。2.按位或運(yùn)算(

8、):二元運(yùn)算符。當(dāng)被運(yùn)算的兩個(gè)值都為0時(shí),運(yùn)算結(jié)果為0;否則為1。3.按位異或運(yùn)算(^):二元運(yùn)算符。當(dāng)被運(yùn)算的兩個(gè)值中任意一個(gè)為1,另一個(gè)為0時(shí),運(yùn)算結(jié)果

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。