변수는 전부 객체이다. 초기화가 되지 않는다면 사용할수 없다.
void main() {
  int n1 = 1;
  double d1 = 10.1;
  bool b1 = true;
  String s1 = "홍길동";
  // print() 함수는 Console에 출력을 해주는 함수입니다.
  // ${} 를 활용하면 문자열에 변수를 바인딩할 수 있습니다.
  print("정수 : ${n1.runtimeType}");
  print("실수 : ${d1.runtimeType}");
  print("부울 : ${b1.runtimeType}");
  print("문자열 : ${s1.runtimeType}");
}
정수 : int
실수 : double
부울 : bool
문자열 : String
Exited.Dart 언어는 타입 추론을 지원합니다. 값이 들어올 때 타입을 추론하여 변수를 초기화합니다.
var과 dynamic의 차이는 var은 타입 변경이 불가능하고 dynamic은 타입 변경이 가능합니다
void main() {
  var n1 = 1;
  // n1 ="가자"; 이거안됨
  var d1 = 10.1;
  var b1 = true;
  var s1 = "홍길동";
  var t1;
  print("t1의 초기화 전 타입 : ${t1.runtimeType}");
  t1 = 2;
  print("t1의 초기화 후 타입 : ${t1.runtimeType}");
  // print() 함수는 Console에 출력을 해주는 함수입니다.
  // ${} 를 활용하면 문자열에 변수를 바인딩할 수 있습니다.
  print("정수 : ${n1}");
  print("실수 : ${d1}");
  print("부울 : ${b1}");
  print("문자열 : ${s1}");
  print("정수 : ${n1.runtimeType}");
  print("실수 : ${d1.runtimeType}");
  print("부울 : ${b1.runtimeType}");
  print("문자열 : ${s1.runtimeType}");
}
t1의 초기화 전 타입 : Null
t1의 초기화 후 타입 : int
정수 : 1
실수 : 10.1
부울 : true
문자열 : 홍길동
정수 : int
실수 : double
부울 : bool
문자열 : String
Exited.dynamic은 Object라 생각 하자
void main() {
  dynamic n1 = 1;
  print("정수 : ${n1.runtimeType}");
  // dynamic 타입은 모든 타입을 받을 수 있고 다른 타입으로 변경도 가능하다.
  n1 = 10.5;
  print("n1 : ${n1.runtimeType}");
}
Share article