Test025 논리 연산자『xor』^ 로 두 개의 변수 값 자리바꾸기
※ 문제풀이
x = x ^ y;
y = y ^ x;
x = x ^ y;
x = 20 ^ 23 00010100 → 20
^ 00010111 → 23
--------------------
x = 3; 00000011 → 3
y = 23 ^ 3 00010111 → 23
^ 00000011 → 3
--------------------
y = 20; 00010100 → 20
x = 3 ^ 20 00000011 → 3
^ 00010100 → 20
--------------------
x = 23; 00010111 → 23
Test025.java
public class Test025
{
public static void main(String[] args)
{
// 주요 변수 선언
int x = 20, y = 23;
// 담긴 내용물 확인
System.out.printf("x → %d, y → %d\n", x, y);
//--==>> x → 20, y → 23
// 연산 및 처리
/* 아래와 같은 결과가 나온다.
x = x ^ y;
y = y ^ x;
x = x ^ y;
*/
y = y ^ x;
x = x ^ y;
y = y ^ x;
// 결과 출력
System.out.printf("x → %d, y → %d\n", x, y);
}
}
cmd
x → 20, y → 23
x → 23, y → 20
계속하려면 아무 키나 누르십시오 . . .
'Study Note > Java' 카테고리의 다른 글
JAVA_ Test027_ 삼항 연산자 = 조건 연산자 __조건__?__true__:_false__ (0) | 2018.04.04 |
---|---|
JAVA_ Test026_ 비트 단위 연산자 shift (0) | 2018.04.04 |
JAVA_ Test024_ 논리 연산자(Operator) &&, ||, ! (0) | 2018.04.04 |
JAVA_ Test023_ 비트 단위 연산자 & | ^ (0) | 2018.04.04 |
JAVA_ Test022_ 비트 단위 연산자 비트열 반전 ~(정리중) (0) | 2018.03.29 |
댓글