Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความสำคัญของ XOR Operator (^) ใน Java


Bitwise XOR (exclusive or) "^" เป็น operator ใน Java ให้ผล '1' ถ้าทั้งสองบิตใน operands ต่างกัน หากเหมือนกัน ให้ '0' XOR เป็น binary operator ประเมินจาก ซ้ายไปขวา Operator "^" undefined สำหรับ argument ชนิด String

ตัวอย่าง 1: Boolean XOR

public class XORTest1 {
    public static void main(String[] args) {
        boolean x = false;
        boolean y = false;
        boolean xXorY = x ^ y;
        System.out.println("false XOR false: " + xXorY);
        x = false;
        y = true;
        xXorY = x ^ y;
        System.out.println("false XOR true: " + xXorY);
        x = true;
        y = false;
        xXorY = x ^ y;
        System.out.println("true XOR false: " + xXorY);
        x = true;
        y = true;
        xXorY = x ^ y;
        System.out.println("true XOR true: " + xXorY);
    }
}

ผลลัพธ์

false XOR false: false false XOR true: true true XOR false: true true XOR true: false

ตัวอย่าง 2: String XOR (bitwise บน char)

public class XORTest2 {
    public static void main(String[] args) {
        String str1 = "1010100101";
        String str2 = "1110000101";
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < str1.length(); i++) {
            sb.append(str1.charAt(i) ^ str2.charAt(i));
        }
        System.out.println(sb);
    }
}

ผลลัพธ์

0100100000