본문 바로가기
Development/Flutter & Dart

Dart Programming Language Types

by 라띠앵커 2021. 2. 3.
반응형

Value vs Variable

void main() {
  var name = myName();
  
  print('My name is $name');
}

String myName() {
  return 'Milati';
}

모든 Value는 각각 Type이 존재합니다.

myName() 이라는 함수는 String Type의 'Milati'를 return 합니다.

그러면 var name 은 String Type 참조값을 가진 변수가 됩니다.

이후에 변경할 수 없습니다.

(변수를 선언할 때 특정 Type을 가진 값이 할당되고 나면 이후에 그 Type 참조값을 가진 변수가 Variable이 됩니다.

따라서 이후에는 Var는 이후에는 다른 Type의 Value를 할당받을 수 없습니다.)

 

변수에 다른 Type을 가진 값을 재할당 시에는 에러 발생

하지만 꼭 Type을 annotate하지 않고 String 을 뺀다면 에러가 사라집니다.

myName()이 dynamic Type이 되기 때문입니다.

이처럼 Dart는 알아서 잘 판단합니다.

Type을 빼더라도 문제가 되지 않지만 정확한 Type을 사용하는 것이 중요합니다.

Dart의 Types

String 문자열

int 정수

double 소수점을 가진 숫자

dynamic Dart가 가진 특별한 Type. 여러 Type을 포괄

반응형