독점 또는 Java 비트 연산자라는 연산자가 있으며, 이는 기호 (^)로 표시됩니다. 운영 규칙은 다음과 같습니다. 두 피연산자 비트 중 결과는 2 개의 피연산자 비트가 동일하면 결과가 1 인 경우 결과는 0이며 결과가 다른 경우 결과는 1입니다. 아래의 예를 보자 :
public class testxor {public static void main (string [] args) {int i = 15, j = 2; system.out.println ( "i ^ j =" + (i ^ j));}}작업 결과는 다음과 같습니다. i^j = 13.
위의 프로그램을 분석하고, I = 15를 바이너리로 변환하는 것은 1111이고, j = 2를 바이너리로 변환하고 XOR의 작동 규칙에 따라 1101을 얻고이를 소수점으로 변환하는 것은 13입니다.
이 규칙을 사용하여 특정 알고리즘을 유연하게 적용 할 수 있습니다. 예를 들어, 2K+1 숫자가 있고 2K가 동일하면 다음과 같은 다른 숫자를 찾아야합니다.
public class testxor {public static void main (string [] args) {int [] array = {2,3,4,4,3,5,6,6,6,6,6,6,5}; int v = 0; for (int i = 0; i <array.length; i ++) {v ^= array [i];} system.out.println ( "+V);결과는 다음과 같습니다. 한 번만 나타나는 숫자는 2입니다.
우리는 단지 XOR 연산자의 규칙을 사용하여 숫자와 0이 XOR 또는 자신이며 숫자와 자신은 XOR 또는 자신입니다.
위의 계산 방법 : v = 2^3^4^4^3^5^6^5^5;
교환법과 위 규칙에 따라
한 번만 나타나는 숫자는 출력 일 수 있습니다 (동일한 전제 조건의 2K를 충족해야 함)
요약
위는 Java의 XOR 문제의 코드 분석에 대한이 기사의 모든 내용입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구는이 사이트의 다른 관련 주제를 계속 참조 할 수 있습니다. 단점이 있으면 메시지를 남겨 두십시오. 이 사이트를 지원해 주신 친구들에게 감사드립니다!