1.概念:
&運算子有兩種用法:(1)按位與 (2)邏輯與
&&運算子是短路與
2.相同點:
二者都是要求符號兩邊的值都為true,表示式的值,才為true
3.不同點:
&左邊的表示式即使為false,右邊的表示式也會進行運算
&左邊的表示式如果為false,右邊的表示式會直接短路掉,即不會進行運算
我們經常使用的是&&,比如在使用者登入裡,對輸入使用者名稱是否為空進行判斷,應當寫成
usename!=null&&!usename.equals("");二者的順序不能交換,因為如果第乙個條件不成立,根本就不能與字串的equals比較,否則會報空指標異常。邏輯或運算"|"與短路或運算子「||」也如此。
Java中 和 的區別
第十一,short s1 1 s1 s1 1 有什麼錯?short s1 1 s1 1 有什麼錯?引出一下討論。賦值運算子,在編譯器將右邊的表示式結果計算出來後,和左邊的變數型別比較精度,如果左邊的變數精度低於右邊的結果的精度,編譯器會顯式的報錯,告訴程式設計師去強制轉型。所以s1 s1 1出錯 最...
Java中 和 的區別
和 都可以用作邏輯與的運算子,表示邏輯與 and 當運算子兩邊的表示式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。還具有短路的功能,即如果第乙個表示式為false,則不再計算第二個表示式,例如,對於if str null str.equals 表...
Java中 和 的區別
這兩者都是表示邏輯與,只有當兩邊都是true時,返回true,只要有乙個false則結果返回false。還具有短路的功能,即如果第乙個表示式為 false,則不再計算第二個表示式,例如,對於 if str null str.equals 表示式,當 str 為 null 時,後面的表示式不會執行,所...