今天分享Java運算符常陈煊唬混淆的幾個點:
◆邏輯運算符或||约谈、|兩種區(qū)分、以及邏輯運算符與&&、&棱诱,
◆前++與后++以及前--與后--區(qū)分
邏輯運算符或||泼橘、|兩種區(qū)分、以及邏輯運算符與&&迈勋、&侥加。
首先說下什么是邏輯運算符,可以理解判斷這整個表達(dá)式是否正確與錯誤粪躬,其結(jié)果是True,False担败。
第一? ? 邏輯與|與短路與 ||
相同點:只有有一個表達(dá)式條件結(jié)果為False,那么最終的結(jié)果就是False镰官、只要所有的條件結(jié)果都為True,最終結(jié)果才為正確提前。
就是“一假必假”這是兩個邏輯與相同點。
區(qū)分別:短路與&& 只要發(fā)現(xiàn)整個表達(dá)式泳唠,有一處為錯誤狈网,就不再繼續(xù)判斷,直接返回結(jié)果為錯誤笨腥。
&在整個表達(dá)式運算中,發(fā)現(xiàn)有一處表達(dá)式為False,還將繼續(xù)直達(dá)整個表達(dá)式運算完.最終返回結(jié)果拓哺。
第二? ?邏輯或||與短路或||
相同點:只要整個表達(dá)式有一處正確,其結(jié)果為:True脖母,只要全部結(jié)果都為False士鸥,才為False。
”一真必真”谆级。
不同點:短路或||只要在整個表達(dá)式,發(fā)現(xiàn)有一處表達(dá)式為True,它就不再判斷后面的表達(dá)式結(jié)果,直接返回True烤礁。
&在整個表達(dá)式運算中,發(fā)現(xiàn)有一處表達(dá)式為True,還將繼續(xù)直達(dá)整個表達(dá)式運算完。
第三? 前++與后++以及前--與后--
無論前++與后++以及前--與后—都屬于java算數(shù)運算符肥照。
第四? 前前++與后++
相同點:都是變量的值加1脚仔。
區(qū)分是:前++是變量先加1,然后在操作后面的數(shù)舆绎。
比如:大家猜猜結(jié)果鲤脏,最后結(jié)果為31
后++,就是先操作這個數(shù)吕朵,然后在加1那么inta=30 a++為多少猎醇?
那么前前--與后—都是變量值減1,同樣的道理 int a=50? a--和--a 為多少边锁?
答案為多少呢姑食?