Bitwise XOR (เฉพาะหรือ) "^" เป็นโอเปอเรเตอร์ในภาษา Java ที่ให้คำตอบ '1' ถ้าทั้งสองบิตในตัวถูกดำเนินการต่างกัน ถ้าทั้งสองบิตเหมือนกัน ตัวดำเนินการ XOR จะให้ผลลัพธ์ '0' . XOR คือตัวดำเนินการไบนารีที่ประเมินจาก ซ้ายไปขวา โอเปอเรเตอร์ "^" คือ ไม่ได้กำหนด สำหรับอาร์กิวเมนต์ประเภท String
ตัวอย่าง
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
ตัวอย่าง
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