| 연산자 타입 |
연산자 |
예제 |
| 산술 연산자 |
+, -, *, /, % |
int a = (x + y - z) * (b / c) % d; |
| 할당 연산자 |
=, +=, -=, *=, /=, %= |
int a = 100; sum += a;
[설명] sum += a 는 sum = sum + a 를 축약한 표현이다.
|
| 증감 연산자 |
++, -- |
int i = 1; i++;
[설명] i++ 는 i = i + 1 를 축약한 표현이다.
|
| 논리 연산자 |
&& (And), || (Or), ! (Not) |
if ((a > 1 && b < 0) || c == 1 || !d) |
| 관계/비교 연산자 |
<, >, ==, !=, >=, <= |
if (a <= b) |
| 비트 연산자 |
& (AND), | (OR), ^ (XOR) |
byte a=7; byte b=(a & 3) | 4;
[설명] 비트 연산에서 & 는 둘이 1인 경우만 1이 되고 (예: 1 & 1 = 1), | 는 둘 중에 하나라도 1인 경우 1이 되며, ^ 는 둘 중에 하나만 1 인 경우 1이 된다.
|
| Shift 연산자 |
>>, << |
int i=2; i = i << 5;
[설명] i의 값을 왼쪽으로 5 비트 이동한다. 결과값은 2의 6승 즉 64가 된다.
|
| 조건 연산자 |
? ?? (C# 3.0 이상만 지원) |
int val = (a > b) ? a : b;
[설명] a가 b보다 크면 val에 a 값을 대입하고, 같거나 작으면 b 값을 대입한다
string s = str ?? "(널)";
[설명] 변수 str가 null 이면 "(널)" 이라는 문자열을 s 에 대입한다. null 이 아니면 str의 값을 s 에 대입.
|