Dart의 연산자 중에서 기본 연산자(+, - * , / , %)
, 논리연산자
, 비교연산자
들은 다른 언어와 완전히 동일하기 때문에 생략하고
Dart 언어에서 볼 수 있는 독특한 부분인 null 관련 연산자
와 타입 비교연산자
에 대해서만 정리하도록 한다
아무것도 없음
을 뜻하는 것으로 0과는 다른 의미이다 ?
를 추가해주어야 null 값이 저장될 수 있다.(null 허용)void main(){
double? number1 = null;
double nuber2 = null; // 오류 발생
// A value of type 'Null' can't be assigned to a variable of type 'double'.
}
현재 변수의 값이 null일 때에만 값을 대입
하는 ??=
연산자가 있다.void main(){
double? number; // 자동으로 초기값은 Null
print(number); // 출력 결과 : null
number ??= 3; // number의 값이 null이면 3을 대입해라!
print(number); // 3.0
number ??= 4; // number의 값이 null이면 4를 대입해라!
print(number); // 3.0
}
is
키워드를 사용하여 변수의 타입을 비교할 수 있다. is!
를 사용하면 반대를 의미하여 같지 않은지에 대한 결과를 리턴한다void main(){
int number = 1;
print(number is int); // 출력 결과 : true
print(number is String); // 출력 결과 : false
print(number is! int); // 출력 결과 : false
print(number is! String); // 출력 결과 : true
}