[자바 #5] 논리 연산자, 비트 논리 연산자, 비트 이동 연산자

도경원's avatar
Aug 21, 2025
[자바 #5] 논리 연산자, 비트 논리 연산자, 비트 이동 연산자

1. 논리연산자

논리 연산자는 논리곱(&&), 논리합(||), 베타적 논리합(^), 논리 부정(!) 연산을 수행한다. 논리 연산은 흐름 제어문인 조건문(if), 반복문(for, while) 등에서 주로 이용된다.

AND(논리곱)

피연산자가 모두가 true일 경우에만 연산 결과가 true

OR(논리합)

피연산자 중 하나만 true이면 연산결과는 true

XOR(배타적 논리합)

피연산자가 하나는 true, 다른 하나가 false일 경우에만 연산결과가 true

NOT(논리 부정)

피연산자의 논리값을 바꿈

2. 비트 논리 연산자

연산자
설명
예제 (2진수)
결과
& (AND)
두 비트 모두 1이면 1
0101 & 0011
0001
| (OR)
두 비트 중 하나만 1이면
0101 | 0011
0111
^ (XOR)
서로 다르면 1
0101 ^ 0011
0110
~ (NOT)
비트를 반전 (1→0, 0→1)
~0101
1010

3. 비트 이동 연산자

연산자
설명
특징
<< (왼쪽 시프트)
왼쪽으로 비트 이동, 오른쪽은 0으로 채움
곱하기 2 효과
>> (오른쪽 시프트)
오른쪽으로 비트 이동, 왼쪽은 부호 비트 유지
나누기 2 효과 (부호 유지)
>>> (부호 없는 오른쪽 시프트)
오른쪽 이동, 왼쪽은 무조건 0 채움
항상 양수 결과
int result = 1 << 3; // 1 -> 1000(2) 8 출력 int result = -8 >> 3; // -1
 
Share article

Gyeongwon's blog