1. 증감 연산자

  • 전위 증가 연산자 (++a):
    변수를 증가시킨 후 해당 구문을 실행.
  • 후위 증가 연산자 (a++):
    해당 구문을 실행한 후 변수를 증가.

예시:

int a = 10; 
Console.WriteLine(a++); // 출력: 10 (증가는 이후에 실행) 
Console.WriteLine(++a); // 출력: 12 (증가는 먼저 실행)

2. 관계 연산자

  • 논리형식(bool) 결과 반환 (true 또는 false).연산자설명 
    == 두 피연산자가 같으면 true.
    != 두 피연산자가 다르면 true.

예시:

int x = 5, y = 10; 
Console.WriteLine(x == y); // 출력: False 
Console.WriteLine(x != y); // 출력: True

3. 논리 연산자

  • AND (&&): 두 조건이 모두 참일 때 true.
  • OR (||): 하나라도 참이면 true.
  • NOT (!): 논리값을 반전.

예시:

bool a = true, b = false; 
Console.WriteLine(a && b); // 출력: False 
Console.WriteLine(a || b); // 출력: True 
Console.WriteLine(!a); // 출력: False

4. 조건 연산자 (?:)

  • 형식: 조건식 ? 참일 때 값 : 거짓일 때 값.
  • 조건식의 결과는 논리값(true 또는 false).

예시:

int a = 30; 
string result = a == 30 ? "삼십" : "삼십 아님"; 
Console.WriteLine(result); // 출력: 삼십

5. Null 조건부 연산자 (?.)

  • 형식: 객체?.멤버 또는 객체?[인덱스].
  • 객체가 null이면 null 반환, 아니면 멤버에 접근.

예시:

class Foo 
{ 
	public int Member { get; set; } 
} 
Foo foo = null; 
int? bar = foo?.Member; // foo가 null이므로 bar는 null

6. Null 병합 연산자 (??)

  • 형식: op1 ?? op2.
  • op1이 null이면 op2 반환, 그렇지 않으면 op1 반환.

예시:

string message = null; 
string result = message ?? "Default message"; 
Console.WriteLine(result); // 출력: Default message​

7. 비트 연산자

  • 왼쪽 시프트 (<<): 비트를 왼쪽으로 이동.
  • 오른쪽 시프트 (>>): 비트를 오른쪽으로 이동.
  • XOR (^): 두 비트가 다를 때 1.
  • NOT (~): 모든 비트를 반전.

시프트 연산 예시:

int a = 240, b = 2; 
Console.WriteLine(a << b); // 출력: 960 (240 * 2^2) 
Console.WriteLine(a >> b); // 출력: 60 (240 / 2^2)​

정리

  • 증감 연산자: 전위와 후위의 차이를 이해.
  • 관계 및 논리 연산자: 분기와 조건 설정에 필수.
  • 조건 연산자: 간단한 조건문 처리에 유용.
  • Null 조건부 연산자: 객체가 null인지 확인 후 멤버 접근.
  • Null 병합 연산자: null 기본값을 처리하는 데 활용.
  • 비트 연산자: 낮은 수준의 데이터 조작에 필수.

+ Recent posts