본문 바로가기
App/Flutter

[Flutter] Dart 언어 기본 문법 Part 2 - Operators(산술연산자, 비교연산자, 논리연산자)

by Gina Sim 2023. 6. 11.

1. 산술 연산자 (arithmetic operator)

  • % : 나누기 후 나머지
  • ++ : 기존 숫자에 1이 더해짐
print(1++);
// 2
  •  -- :  기존 숫자에 1이 빼짐
  • += : 좌측의 값에 우측에 값만큼 더함
number = 3;
number += 2;
print(number)
// 5
  •   -= : 좌측의 값에 우측에 값만큼 뺌
  • *= : 좌측의 값에 우측에 값만큼 곱함
  • /= : 좌측의 값에 우측에 값만큼 나눔 
  • ??= : 변수가 만약 null이면 오른쪽 값으로 바꿈
double? number = 2.0;   // null 값이 들어갈 수 있는 double 형태의 변수 선언

// number가 null이 아니므로 3으로 값이 바뀌지 않음
number ?? = 3.0
print(number)
// 2

// number가 null이므로 3으로 값이 바뀜
number = null   // number 변수에 null 값
number ??= 3.0
print(number)
// 3

 

 

2. 비교 연산자 (comparison operator)

  • > : 좌측의 값이 우측의 값보다 크(초과) true 아니면 false
  • <  : 좌측의 값이 우측의 값보다 작(미만)으면 true 아니면 false
  • >=  : 좌측의 값이 우측의 값보다 크거나 같(이상)으면 true 아니면 false
  • <= : 좌측의 값이 우측의 값보다 작거나 같(이하)으면 true 아니면 false
  • == : 좌측의 값과 우측의 값이 같으면  true 아니면 false
  • != : 좌측의 값과 우측의 값이 다르면  true 아니면 false
int number1 = 1;
int number2 = 2;

print(number1 > number2);    // false
print(number1 < number2);    // true
print(number1 >= number2);   // false
print(number1 <= number2);   // true
print(number1 == number2);   // false
print(number1 != number2);   // true
  • is : 좌측의 변수가 우측의 변수 타입이 맞으면 true 아니면 false
  • is! : 좌측의 변수가 우측의 변수 타입이 아니면 true 맞으면 false
int number = 1;

print(number is int);       // true
print(number is String);    // false

print(number is! int);       // false
print(number is! String);    // true

 

 

3. 논리 연산자 (logical operator)

  • and : 모두 충족해야 하는 조건을 연결할 때
    • true and true => true
    • true and false => false
bool result1 = 12 > 10 && 1> 0 && 3>0;    // true && true && true
print(result1);
// true

bool result2 = 12 > 10 && 1<0;    // true && false
print(result2);
// false
  • or : 하나만 충족해도 되는 조건을 연결할 때
    • true or true => true
    • true or false => false
bool result3 = 12 > 10 || 1> 0 || 3>0;    // true || true || true
print(result3);
// true

bool result4 = 12 > 10 || 1 < 0;    // true || false
print(result4);
// true

bool result5 = 12 < 10 || 1 < 0 ;    // false || false 
print(result5);
// false

 

 

 

반응형

댓글