728x90
var / String / dynamic
void main(){
String name = '김자반';
name = 'kimjavan';
var age = 18;
age = "열여덟살";
}
String으로 문자 변수를 선언할 수 있다.
var로 변수를 선언할 수 있다.
변수에는 같은 타입(숫자, 문자, 불리언 값 등)으로 지정해주어야하며 다른 타입이 들어간 경우 오류가 발생한다.
dart에서 타입 값을 분류해주기 때문에 var를 사용하는 것을 권장한다.
데이터 타입만 유지한다면 변수의 값은 업데이트 할 수 있다.
void main(){
var name;
name = 'kimjavan';
name = 12;
name = true;
String name2;
name2 = 'kimjavan';
name2 = 12;
name2 = true;
dynamic name3;
name3 = 'kimjavan';
name3 = 12;
name3 = true;
}
var name;
이런식으로 값을 할당하지 않고 변수를 선언하는 경우 해당 변수는 타입이 dynamic으로 된다.
받아오는 값의 타입이 확실하게 정해지지 않을 때 사용한다.
dynamic name;
으로 선언하는 것과 같은 효과를 가진다.
final / late / const
final name = 'kimjavan';
으로 변수선언을하면 재할당이 안된다.
final String name = 'kimjavan';
이렇게하면 string값으로 선언 할 수 있는데 dart가 알아서 판단해주니까 위처럼 선언해도 된다.
void main(){
late final name;
name = 'kimjavan';
name = 'babo';
}
late final name;
으로 변수선언을 하면 나중에 값을 받아서 값을 할당할 수 있다.
name = 'babo';
는 final이 한 번 밖에 선언되지 않기 때문에 오류가 발생한다.
late는 String, final, var등에 사용할 수 있다.
const는 컴파일 할 때 알고있는 값을 정의할 때, 재할당이 필요없는거면 사용한다.
'flutter > dart' 카테고리의 다른 글
[dart] list 리스트 (0) | 2023.08.14 |
---|---|
[dart] 숫자, 문자, 참거짓(boolean) 자료형 (0) | 2023.08.14 |
[dart] final / late final (0) | 2023.08.14 |
[dart] null safety (0) | 2023.08.14 |
[dart] ;(세미콜론), void main() (0) | 2023.08.14 |