短路問題 和 , 和 的區別

2021-08-21 18:37:52 字數 709 閱讀 2086

&和&&的區別是,&會執行兩邊,不管第乙個是否成立

&&只會執行一邊,如果第乙個條件為假,則不會走第二個條件

舉例

public

class test2

system.out.println(i);

}}

結果是i=5

public

class test2

system.out.println(i);

}}

結果是i = 4

||和|都是表示「或」,區別是||只要滿足第乙個條件,後面的條件就不再判斷,而|要對所有的條件進行判斷。

注意當他們進行運算的時候,&表示兩個數先都變成二進位制,然後兩個數都是1才為1,其他為0

|表示兩個數只要有乙個為1,就是1,其他都是0

例如:

int a = 2

;int b = 3

;boolean flag1 = ++a > 1 | --b < 5

;system.out

.println(flag1);

system.out

.println(a);

system.out

.println(b);

結果:flat=true a=3 b=2

如果替換為||,則結果為:flat=true a=3 b=3

和 , 和 的區別

是邏輯與 短路與 當第乙個判斷條件不滿足要求時 返回false 第二個判斷條件就不會執行 只有當兩個判斷條件都返回true時,整個邏輯運算才返回true。按位與,不論什麼情況下,兩邊的判斷條件都會執行,當兩邊都返回true時,按位與才返回true。邏輯或,當第乙個判斷條件返回true時,邏輯或直接返...

和 和 的區別

和 相同之處 和 都表示 符號兩端必須同時為真,最後的結果為真 其中一端為假,則最後的結果為假 不同之處 用 時,左端為假,還需要繼續判斷右端真假 用 時,左端為假,則不需要判斷右端真假,即右端不需要進行運算 和 相同之處 和 都表示 符號兩端中有一端為真時,最後的結果為真 兩端都為假時,最後的結果...

和 , 和 的區別

我們將 和 定義為邏輯運算子,而 和 定義為位運算子。如果兩個運算元都非零,則條件為真 如果兩個運算元中有任意乙個非零,則條件為真。按位與操作,按二進位制位進行 與 運算。運算規則 有 0 則為 0 0 0 0 0 1 0 1 0 0 1 1 1 按位或運算子,按二進位制位進行 或 運算。運算規則 ...