按位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
sb.append(str1.charAt(i)^str2.charAt(i));
}
System.out.println(sb);
}
}
输出结果0100100000