【java】java中的 &= 和 |= 和 ^= 的区别

今日份代码:

public class MainMethod {
    public static void main(String[] args) {
        boolean flag = true;
        flag &= true;
        System.out.println("true\t&=\ttrue\t==>\t" + flag);
        flag = true;
        flag &= false;
        System.out.println("true\t&=\tfalse\t==>\t" + flag); 
        flag = false;
        flag &= true;
        System.out.println("false\t&=\ttrue\t==>\t" + flag); 
        flag = false;
        flag &= false;
        System.out.println("false\t&=\tfalse\t==>\t" + flag+"\n"); 
        
        flag = true;
        flag |= true;
        System.out.println("true\t|=\ttrue\t==>\t" + flag);
        flag = true;
        flag |= false;
        System.out.println("true\t|=\tfalse\t==>\t" + flag); 
        flag = false;
        flag |= true;
        System.out.println("false\t|=\ttrue\t==>\t" + flag); 
        flag = false;
        flag |= false;
        System.out.println("false\t|=\tfalse\t==>\t" + flag+"\n"); 
        
        System.out.println("^=  相同为假,不同为真");
        flag = true;
        flag ^= true;
        System.out.println("true\t^=\ttrue\t==>\t" + flag);
        flag = true;
        flag ^= false;
        System.out.println("true\t^=\tfalse\t==>\t" + flag); 
        flag = false;
        flag ^= true;
        System.out.println("false\t^=\ttrue\t==>\t" + flag); 
        flag = false;
        flag ^= false;
        System.out.println("false\t^=\tfalse\t==>\t" + flag); 
    }
}
View Code

结果:

true    &=    true    ==>    true
true    &=    false   ==>    false
false   &=    true    ==>    false
false   &=    false   ==>    false

true    |=    true    ==>    true
true    |=    false   ==>    true
false   |=    true    ==>    true
false   |=    false   ==>    false

^=  相同为假,不同为真
true    ^=    true    ==>    false
true    ^=    false   ==>    true
false   ^=    true    ==>    true
false   ^=    false   ==>    false

猜你喜欢

转载自www.cnblogs.com/sxdcgaq8080/p/13202423.html