中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中&、|、&&、||有哪些區別

發布時間:2021-04-28 10:00:28 來源:億速云 閱讀:162 作者:小新 欄目:編程語言

這篇文章主要介紹Java中&、|、&&、||有哪些區別,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

Java的特點有哪些

Java的特點有哪些 1.Java語言作為靜態面向對象編程語言的代表,實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。 2.Java具有簡單性、面向對象、分布式、安全性、平臺獨立與可移植性、動態性等特點。 3.使用Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。

Java中&叫做按位與,&&叫做短路與,它們的區別是:

& 既是位運算符又是邏輯運算符,&的兩側可以是int,也可以是boolean表達式,當&兩側是int時,要先把運算符兩側的數轉化為二進制數再進行運算,而短路與(&&)的兩側要求必須是布爾表達式。舉例如下:

12&5 的值是多少?答:12轉成二進制數是1100(前四位省略了),5轉成二進制數是0101,則運算后的結果為0100即4 這是兩側為數值時;

若 int i = 2,j = 4;則(++i=2)&(j++=4)的結果為false,其過程是這樣的:先判斷++i=2是否成立,這里當然是不成立了(3 == 2),但是程序還會繼續判斷下一個表達式是否成立,j++=4 ,該表達式是成立的,但是&運算符要求運算符兩側的值都為真,結果才為真,所以(++i=2)&(j++=4)的結果為 false 注意 :

&為真的條件是兩側表達式都為真,但是即使我們判斷出左側表達式的值為false,程序也還是要繼續執行去判斷右側的表達式值的真假

若 int i = 2,j = 4;則(++i=2)&&(j++=4)的結果為false,其過程基本上和上面的是相同的,但是若左側表達式的值為false時,程序則不會繼續判斷右側表達式的真假了,短路與中,短路這個詞大概也就是這個意思吧

Java中‘|’與‘||’的區別

int i=0;
if(3>2 || (i++)>1) i=i+1;
System.out.println(i);

這段程序會打印出1,而不是打印出2。

因為在if的條件判斷中,程序先判斷第一個表達式3>2是否成立,結果3>2為真,那么按照邏輯來說,無論后面一個表達式(i++)>1是否成立,整個或表達式肯定為真,因此程序就不去執行判斷后面一個表達式即(i++)>1了,所以這里i并沒有自增1。然后程序執行到i=i+1,于是i變為1。最后打印出1。

int i=0;
if(3>2 | (i++)>1) i=i+1;
System.out.println(i);

如果換做這樣寫,那么就是打印出2了,因為無論第一個條件3>2是否為真,程序都會去執行判斷第二個條件表達式,因此i++這個自增是會被執行的,再加上if內的i=i+1,所以最終i=2。

有些人習慣把||叫做短路或,把&&叫做短路與。&&和&的區別和||與|的區別類似,對于&&來說,如果前面的條件表達式已經為假了,整個條件表達式肯定為假,就不會去執行判斷后面的條件表達式。

以上是“Java中&、|、&&、||有哪些區別”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黔南| 枣强县| 三台县| 本溪市| 遂昌县| 南丰县| 吴江市| 华亭县| 红安县| 兰州市| 益阳市| 滨海县| 金塔县| 北碚区| 托里县| 运城市| 林口县| 昭苏县| 神池县| 阳泉市| 营口市| 常州市| 宝清县| 平遥县| 共和县| 普宁市| 民权县| 凉城县| 金坛市| 长武县| 墨竹工卡县| 嘉兴市| 海原县| 岐山县| 普安县| 雷山县| 堆龙德庆县| 平湖市| 开远市| 吴江市| 洛宁县|