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

ความสำคัญของตัวดำเนินการ XOR ใน Java?


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