Contents
접기
728x90
우리는 현실에서도 "비도 오고 바람도 불면 우산을 써야겠다" 같은 여러 조건을 동시에 판단하는 경우가 많다.
C#에서도 여러 조건을 연결해서 판단할 때 논리 연산자를 사용한다.
논리 연산자란?
논리 연산자는 참(true)과 거짓(false)을 조합해서 더 복잡한 조건을 만들 때 사용한다.
연산자 | 의미 | 설명 |
&& | AND(그리고) | 둘 다 true일 때만 true |
|| | OR(또는) | 둘 중 하나가 true일때 true |
! | NOT(부정) | true는 false, false는 true로 변경 |
(AND) 연산자
"두 조건이 모두 맞아야 할 때" 사용한다.
int age = 20;
bool hasID = true;
if (age >= 18 && hasID)
{
Console.WriteLine("입장 가능합니다!");
}
else
{
Console.WriteLine("입장할 수 없습니다.");
}
- 결과(age >= 18 (true) 이고 hasID (true), 둘 다 true이므로 실행)
입장 가능합니다!
|| (OR) 연산자
"둘 중 하나라도 맞으면 될 때" 사용한다.
bool isRaining = true;
bool hasUmbrella = false;
if (isRaining || hasUmbrella)
{
Console.WriteLine("비를 피할 준비 완료!");
}
else
{
Console.WriteLine("비를 맞을 수도 있어요.");
}
- 결과(isRaining이 true라서 한쪽만 true여도 전체가 true가 된다)
비를 피할 준비 완료!
! (NOT) 연산자
"참과 거짓을 반대로 뒤집고 싶을 때" 사용한다.
bool isSleeping = false;
if (!isSleeping)
{
Console.WriteLine("지금 깨어 있어요!");
}
- 결과(!isSleeping은 false를 true로 바꿔서 실행된다)
지금 깨어 있어요!
논리 연산자 주의할 점
❌ &&와 ||의 평가 순서
C#에서는 앞 조건이 결정되면 뒤 조건을 건너뛸 수 있다!!
int x = 10;
if (x == 10 || SomeFunction())
{
Console.WriteLine("첫 번째 조건이 true이므로 SomeFunction() 실행 안 함");
}
📌 x == 10이 true라면 SomeFunction()은 실행되지 않는다!
📌 반대로 && 연산자는 앞이 false면 뒤를 실행 안 한다.
728x90
'C# > 연산자' 카테고리의 다른 글
[C#] 비트연산자 (0) | 2025.03.20 |
---|---|
[C#] 연산자 우선순위 (0) | 2025.03.19 |
[C#] 관계(비교)연산자 (0) | 2025.03.19 |
[C#] 오버플로우와 언더플로우 (0) | 2025.03.19 |
[C#] 복합 대입 연산자, 증감 연산자(++,--) (0) | 2025.03.19 |