반응형
null은 뭘까
값인데 아무 값도 없다.
아무 값도 없지만 값이다.
식당에 들어가서 테이블에 앉았다.
일행이 오면 주문을 하겠다고 직원에게 알려주었다.
직원은 그 테이블에 주문은 없지만
곧 주문이 생길 것이라고 인지하고 있다.
이게 내가 이해하는 null이다.
모든 코딩 지식을 외식업으로 이해하는 나..ㅋㅋ 직업병이다....ㅎㅎ
null 허용과 불허
다트의 기본적으로 변수는 null 불허이다.
해당 변수 값에 null을 지원하려면 ? 을 붙이면 된다 .
int a1 =10;
int? a2=10;
null 불허와 변수의 초기화
변수는 값을 담는 공간이다.
그렇기 때문에 변수를 선언할 때 값을 지정해줘야 한다.
int a1=10; // 오류 안남
int a1; // 오류가 남 ***
int? a2=10; // 오류 안남
int a2; // 오류 안남
var,dynamic 타입의 널 안전성
변수를 타입을 따로 지정하지 않고 var, dynamic를 지정하겠다는 건
nulllable이란 뜻이다!
널 안전성과 형 변환
nullable 이 nonnull 보다 높은 놈이다.
nullable의 값이 nonnull값이 포함되어 있다는 소리이다.
int a1=10; //nonnull
int? a2=10; //nullable
main(){
a1=a2; // 오류 a1의 값이 a2의 값 하위이기 때문
a2=a1; // 성공
}
초기화를 미루는 late 연산자
널 불허 변수, 기본적으로 선언 하는 변수는 선언과 동시에 값을 지정해줘야 한다.
그런데 바로 값을 넣어주기가 애매할 때가 있다. 그럴 때 사용하는게 late 연산자이다.
int a1; //오류
late int a1; // 일단은 오류는 아님
하지만 이후에 변수에 값을 지정하고 사용해야 한다.
깡샘의 플러터 & 다트 프로그래밍 : 네이버 도서 (naver.com)
반응형
'책 리뷰 > 깡샘의 플러터 &다트' 카테고리의 다른 글
야 너도 플러터 할 수 있어! with 깡샘 (0) | 2023.02.22 |
---|