=> null값을 참조하지 못하게 함
그러나 참조하고 싶다면 변수형타입 바로 뒤에 ?를 붙으면 된다.
String name = 'hi';
name = null;
※err 발생
String? name = 'bye';
name = null;
※정상 실행
만약 입력받은 값이 null이 아닐때 어떤 동작을 실행시키고 싶다면
보통은 조건문으로 검사해준다.
그런데 Dart에서는 더 간단한 방법도 존재한다.
1. 통상적인 방법
if(name != null){
name.isNotEmpty;
}
2. Dart에서 제공하는 방법
name?.isNotEmpty;
원래 final을 붙인 변수는 나중에 고칠 수가 없다. final은 딱 한번만 할당을 해줄 수 있는데 late를 붙여도 동일하지만 late를 앞에 붙여주면 우선 선언만 하고 나중에 입력을 받을 수 있다.
Dart에서는 Const를 사용할때 컴파일러가 이미 알고 있는 값만 저장이 된다. 예를 들자면 const PI = 3.14어쩌구저쩌구는 가능하지만
const name = getName(); 이런건 불가능하단 말이다.
★컴파일할때를 기준으로 알고있는지 모르는지 구분하여 판단하면 된다.
뭔가로부터 그 값을 받아와서 상수로 저장하고 싶다면 final을 사용해야
한다.