플러터 앱 개발

Chapter 3. Dart 기본 문법 B - 연산자

yuna 2025. 12. 8. 19:59

안녕하세요! 오늘은 Dart 기본 문법 두번째 시간입니다!!

 

지난 포스팅에서 변수와 데이터에 대해 공부했는데요,

오늘은 연산자에 대해 소개하려고 합니다 😆

 

연산자는 수학적인 계산뿐만 아니라 논리적인 비교,

데이터 조합 등 다양한 작업에 필요한 내용이니 꼭 알아두셔야 합니다!

 

연산자란?

프로그램 내에서 데이터를 조작하거나 처리하기 위해 사용하는 기호 또는 키워드

 

연산자 종류

  1. 산술 연산자: 기본 연산
    • + : 덧셈
    • - : 뺄셈
    • * : 곱셈
    • / : 나눗셈 -> 소수 단위까지 반환
    • ~/ : 나눗셈-> 정수 부분만 반환
    • % : 나눗셈에서 나머지만 구할 때 사용
  2. 비교 연산자: 두 값을 비교할 때 사용 -> 참이면 true, 거짓이면 false를 반환
    • == : 두 값이 같다
    • != : !는 반대의 의미이므로, ==와 반대로 반환 / 두 값이 다르면 true, 같으면 false
    • >, < : 양 쪽의 크기 비교
    • >=, <= : 크거나 같다의 의미
  3. 타입 체크 연산자: 프로그램 실행 중에 타입을 검사
    1. as: 타입을 변환할 때 사용
    2. is: 특정 타입을 가지고 있는지 판별 / 즉, 변수 a가 타입 ~냐? 라고 물을 수 있음
    3. is!: 특정 타입을 가지고 있지 않은지 판별 / 즉, is와 반대 개념 -> 청개구리 스타일,,ㅎ
1) 
int a =2;
print(a as double); // int였던 2가 double로 형변환

2)
int? a=2;
print(a is int); // 2는 int가 맞기 때문에 true

3)int? a=null;
print(a is! int); // a는 null이므로 int냐고 물었을 때 아니므로 true가 반환

 

 

    4. 대입 연산자: 값을 변수에 대입할 때 사용

  1. = : 변수에 값을 대입할 때 / int a =2; -> 2를 a에 대입
  2. ??=: 변수의 값이 null일 때 새로운 값을 대입 / 
  3. +=: a+=b -> a=a+b
  4. -=: a-=b -> a=a-b
  5. *=: a*=b -> a=a*b
  6. /=: a/=b -> a=a/b
  7. ~/=: a ~/=b -> a=a~/b => 나누었을 때 나온 값의 정수 부분을 a에 대입
  8. %=: a %= b -> a=a%b  => 나누었을 때 나온 나머지를 왼쪽에 대입
2)
int? a=null;
a ??=3;
print(a); //a의 값이 null이므로 3이 출력

2-1)
int b=3;
b ??=2;
print(b); //b의 값이 null이 아니므로 처음 선언한 3이 출력

3)
int a = 2;
int b = 3;
a += b;
print(a); //5

4)
int a = 2;
int b = 3;
a *= b;
print(a); // 6

7)
int a = 5;
int b = 3;
a ~/=b;
print(a); //1

8)
int a = 5;
int b = 3;
a %/=b;
print(a); //2

   

 5. 논리 연산자: 참 or 거짓으로 판별할 수 있는 표현식을 반전하거나 결합

  1. !: 판별식을 반전
  2. l l: 왼쪽 판별식과 오른쪽 판별식 중 하나라도 참이면 참을 반환, 모두 거짓이면 거짓을 반환 -> or 의미
  3. &&: 왼쪽 판별식과 오른쪽 판별식 모두 참이면 참을 반환하고, 하나라도 거짓이면 거짓을 반환 -> and 의미
1)
bool a = true;
print(!a); //false

2)
bool a = true;
bool b = false;
print(a||b); //true

3)
bool c = true;
bool d = false;
print(c && d); //false