<aside> 💡
비트 연산자는 비트 단위로 연산이 이루어지는 연산자이다. 비트 단위의 연산을 하는 경우는 ‘암호화’ 작업처럼 임의의 숫자를 만들거나, 어떤 변수의 특정 비트를 꺼내보는 경우에 사용한다. 자바는 이런 경우는 아니지만 프로그램에서 특정 값을 만들거나 연산할 때 비트 연산자를 사용한다.
</aside>
<aside> 💡
&(AND)연산자는 두 개의 비트 값이 모두 1인 경우에만 연산의 결과 값이 1이 된다. 논리 연산자의 &&(논리곱)과 비슷하다.
</aside>
int num1 = 5;
int num2 = 10;
int result = num1 & num2;
num1 : 00000101
&num2 : 00001010
result : 00000000
<aside> 💡
|(OR) 연산자는 비트 값이 하나라도 1이면 결과 값이 1이 된다. 논리 연산자의 ||(논리 합) 과 비슷하다.
</aside>
int num1 = 5;
int num2 = 10;
int result = num1 | num2;
num1 : 00000101
|num2 : 00001010
result : 00001111
<aside> 💡
^(XOR) 연산자는 같은 값이면 0, 다른 값이면 1의 결과 값을 갖는다.
</aside>
int num1 = 5;
int num2 = 10;
int result = num1 ^ num2;
num1 : 00000101
^num2 : 00001010
result : 00001111