논리 연산자

코딩C언어JavaPython
읽는데 4분 소요
처음 쓰여진 날: 2026-04-10
마지막 수정일: 2026-04-10
조회수: 4
선수학습(1개)

요약

논리 연산자(&&, ||, !, and, or, not)를 알아봅니다. 여러 조건을 조합할 때 사용하는 논리 연산자와 비트 연산자(&, |)와의 차이를 C/Java/Python 언어별로 정리합니다.

논리 연산자 핵심 정리

연산자이름설명예시
&&AND둘 다 참이면 참(3 > 1) && (5 > 2) = 1
||OR하나라도 참이면 참(3 > 5) || (5 > 2) = 1
!NOT참이면 거짓, 거짓이면 참!(3 > 5) = 1
연산자이름설명예시
&&AND둘 다 true면 true(3 > 1) && (5 > 2) = true
||OR하나라도 true면 true(3 > 5) || (5 > 2) = true
!NOTtrue면 false, false면 true!(3 > 5) = true
연산자설명예시결과
and두 조건 모두 True이면 TrueTrue and FalseFalse
or하나라도 True이면 TrueTrue or FalseTrue
notTrue를 False로, False를 True로 반전not TrueFalse

AND 쌩기초

두 조건이 모두 참일 때만 참을 반환합니다.

c
코드 하이라이팅 중...
java
코드 하이라이팅 중...
python
코드 하이라이팅 중...

OR 쌩기초

두 조건 중 하나라도 참이면 참을 반환합니다.

c
코드 하이라이팅 중...
java
코드 하이라이팅 중...
python
코드 하이라이팅 중...

NOT 쌩기초

조건의 참/거짓을 반대로 뒤집습니다.

c
코드 하이라이팅 중...
java
코드 하이라이팅 중...

c > d3 > 5이므로 false입니다. NOT 연산으로 뒤집으면 true가 됩니다.

python
코드 하이라이팅 중...

단축 평가 기초

&&||단축 평가(short-circuit evaluation)를 합니다. 왼쪽 조건만으로 결과가 확정되면 오른쪽 조건을 평가하지 않습니다.

  • &&: 왼쪽이 거짓이면 오른쪽을 평가하지 않음 (어차피 전체가 거짓)
  • ||: 왼쪽이 이면 오른쪽을 평가하지 않음 (어차피 전체가 참)
c
코드 하이라이팅 중...

논리 연산자 vs 비트 연산자 심화

Java에서는 비슷한 역할을 하는 두 종류의 연산자가 있습니다.

논리 연산자비트 연산자차이점
&&&&&는 왼쪽이 false면 오른쪽 평가 안 함, &는 양쪽 모두 평가
|||||는 왼쪽이 true면 오른쪽 평가 안 함, |는 양쪽 모두 평가

여기서 평가란 식을 실제로 계산(실행)하는 것입니다. &&는 왼쪽이 false면 오른쪽 식을 아예 실행하지 않지만, &는 왼쪽 결과에 관계없이 양쪽을 모두 실행합니다.

java
코드 하이라이팅 중...

단축 평가 기초

andor단축 평가(short-circuit evaluation)를 합니다. 왼쪽 조건만으로 결과가 확정되면 오른쪽 조건을 평가하지 않습니다.

  • and: 왼쪽이 False이면 오른쪽을 평가하지 않음
  • or: 왼쪽이 True이면 오른쪽을 평가하지 않음
python
코드 하이라이팅 중...