소소한일상

[플러터] 변수타입 정리와 nullbale변수와 상수(final,const) 본문

플러터

[플러터] 변수타입 정리와 nullbale변수와 상수(final,const)

젤라 2022. 5. 5. 11:58

변수타입 정리

void main() {
  //var는 타입추론, 타입추론이 아닌 타입을 명시 권장

  String name = 'Voyager 1';
  int year = 1977;
  double antennaDiameter = 3.7;
  List flybyObjects = ['Jupiter', 'Saturn', 'Uranus', 'Neptune'];
  Map<String, dynamic> image = {
    'tags': ['saturn'],
    'url': '//path/to/saturn.jpg'
  };

  //dynamic = 여러 타입을 받을 수 있는 변수 타입
  dynamic varTest = 'Angela';
  varTest = 3;
  varTest = 3.2;
  varTest = true;

  print(name);
  print(year);
  print(antennaDiameter);
  print(flybyObjects);
  print(image);
  print(varTest);
}

 

 

상수(변하지않는 수 ) 타입 종류 ( final, const )

  • final
    • 런타입(run-time)에 값 할당
  • const
    • 컴파일(complie-time)에 값 할당

 

런타입(코드를 읽을 때)에 실행되는 예시, 

여기는 final를 넣어서 실행되지만, const 는 컴파일 되는 때 되기 때문에 할당되지 않는다.📝🔎🔎

 

🔎 변치않는데이터는 동일하지만 , 값 할당되는 순서가 다르다는 것만 알면될듯,

void main() {
  final DateTime now1 = DateTime.now();
  print(now1);

  Future.delayed(Duration(seconds: 1), () {
    final DateTime now2 = DateTime.now();
    print('----');
    print(now1);
    print(now2);
  });
}