// 변수 타입
void main() {
int n1 = 1; // 정수
double d1 = 10.1; // 실수
bool b1 = true; // boolean
String s1 = "홍길동"; // 문자열
print("n1 : ${n1}");
print("d1 : ${d1}");
print("b1 : ${b1}");
print("s1 : ${s1}");
print(d1.runtimeType); // 타입 찾기
}

// 타입 추론
void main() {
var n1 = 1; // 값이 들어갈 때 타입 결정
// n1 = "문자열";
n1 = 3;
print("n1 : ${n1}");
print(n1.runtimeType);
print("-----------------");
// 2. 다이나믹 (타언어 부모타입으로 받기 Object 타입)
dynamic n2; // 다이나믹 타입 (타입이 결정 안 남)
print("다이나믹 : ${n2.runtimeType}");
n2 = 1;
print("다이나믹 : ${n2.runtimeType}");
n2 = "문자열"; // 그래서 계속 값을 바꿀 수 있음
print("다이나믹 : ${n2.runtimeType}");
}

Share article