Dart는 다양한 연산자(operator)와 표현식(expression)을 제공하여 개발자가 보다 간결하고 직관적인 코드를 작성할 수 있도록 합니다. 이번 글에서는 산술 연산자, 비교 연산자, 논리 연산자, 비트 연산자, 할당 연산자, 조건 연산자 및 기타 특수 연산자에 대해 살펴보겠습니다.
1. 산술 연산자 (Arithmetic Operators)
산술 연산자는 기본적인 수학 연산을 수행할 때 사용됩니다.
연산자 | 설명 | 예제 |
---|---|---|
+ | 덧셈 | var sum = 10 + 5; // 15 |
- | 뺄셈 | var diff = 10 - 5; // 5 |
* | 곱셈 | var product = 10 * 5; // 50 |
/ | 나눗셈 (실수 반환) | var div = 10 / 3; // 3.333... |
~/ | 나눗셈 (정수 반환) | var divInt = 10 ~/ 3; // 3 |
% | 나머지 연산 | var remainder = 10 % 3; // 1 |
2. 비교 연산자 (Comparison Operators)
비교 연산자는 두 값을 비교할 때 사용되며, 결과는 true
또는 false
입니다.
연산자 | 설명 | 예제 |
---|---|---|
== | 같음 | print(10 == 10); // true |
!= | 다름 | print(10 != 5); // true |
> | 초과 | print(10 > 5); // true |
< | 미만 | print(10 < 5); // false |
>= | 이상 | print(10 >= 10); // true |
<= | 이하 | print(10 <= 5); // false |
3. 논리 연산자 (Logical Operators)
논리 연산자는 주어진 조건을 조합하여 논리적인 판단을 할 때 사용됩니다.
연산자 | 설명 | 예제 |
---|---|---|
&& | 논리 AND | print(true && false); // false |
|| | 논리 OR | print(true || false); // true |
! | 논리 NOT | print(!true); // false |
4. 비트 연산자 (Bitwise Operators)
비트 연산자는 이진수 형태로 값을 조작할 때 사용됩니다.
연산자 | 설명 | 예제 (2진수 연산) |
---|---|---|
& | 비트 AND | print(5 & 3); // 1 (0101 & 0011 = 0001) |
| | 비트 OR | print(5 | 3); // 7 (0101 | 0011 = 0111) |
^ | 비트 XOR | print(5 ^ 3); // 6 (0101 ^ 0011 = 0110) |
~ | 비트 NOT | print(~5); // -6 (~0101 = 1010, 2의 보수) |
<< | 왼쪽 시프트 | print(5 << 1); // 10 (0101 << 1 = 1010) |
>> | 오른쪽 시프트 | print(5 >> 1); // 2 (0101 >> 1 = 0010) |
5. 할당 연산자 (Assignment Operators)
할당 연산자는 변수에 값을 저장하거나, 연산 후 값을 갱신할 때 사용됩니다.
연산자 | 설명 | 예제 |
---|---|---|
= | 값 할당 | var a = 10; |
+= | 덧셈 후 할당 | a += 5; // a = a + 5 |
-= | 뺄셈 후 할당 | a -= 3; // a = a - 3 |
*= | 곱셈 후 할당 | a *= 2; // a = a * 2 |
/= | 나눗셈 후 할당 | a /= 2; // a = a / 2 |
~/= | 정수 나눗셈 후 할당 | a ~/= 2; // a = a ~/ 2 |
6. 조건 연산자 (Conditional Operators)
조건 연산자는 특정 조건을 만족할 때 값을 반환하는데 사용됩니다.
연산자 | 설명 | 예제 |
---|---|---|
? : | 삼항 연산자 | var result = (10 > 5) ? "크다" : "작다"; |
?? | null 대체 연산자 | var name = null; print(name ?? "Unknown"); // Unknown |
??= | null 할당 연산자 | var text; text ??= "Default"; print(text); // Default |
Dart의 연산자는 코드를 더욱 간결하고 직관적으로 작성할 수 있도록 돕습니다.
- 산술 연산자:
+
,-
,*
,/
,~/
,%
- 비교 연산자:
==
,!=
,>
,<
,>=
,<=
- 논리 연산자:
&&
,||
,!
- 비트 연산자:
&
,|
,^
,~
,<<
,>>
- 할당 연산자:
=
,+=
,-=
,*=
,/=
,~/=
- 조건 연산자:
? :
,??
,??=