有些初學java的小伙伴,方才學到運算符這一塊,面臨“+-*/”的操作運算符感覺很是簡單,加減乘除誰還不會呢?可是俄然看到一個i++又見到一個++i,剎時有頷首年夜了,不禁迷惑這是寫錯了仍是縮寫呢?其實這是java編程中很常見的2種自增運算符的縮寫,下面給大師講解一下它們的區別。
i++的意思是進步前輩行表達式運算,再進行自增運算。
從成果來看,把i++的運算過程拆分隔,等效于i=i+1
可以看到運算成果是一致的。
可是在表達式運算過程中,i++會進步前輩行表達式運算,然后才會進行自增運算。
例如圖例中的B=j++,把運算過程拆分隔等效于B=j;j=j+1;
按照運行成果可以看到B=j;
賦值運算竣事之后j=j+1,即j進行自增運算。
而++i的意思是進步前輩行自增或者自減運算,再進行表達式運算。
經由過程運算成果可以發現,若是僅從i的值來看,++i和i++最終的i值是一樣的,都是i自增添了1.
可是在表達式運算過程中,++i會進步前輩行自增或者自減運算,再進行表達式運算。
例如圖例中的int B = ++j,等效于下面的j=j+1;B = j
經由過程運算成果來看,可以看到i進步前輩行了自加運算,i=i+1;
自加運算之后再進行賦值,A=i;
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!