728x90
널 인지(Null-aware) 연산자
위젯의 널 여부 확인 사용한다.
??
좌, 우 피연산자 중에서 Null이 아닌 것을 선택한다.
const x = null;
const y = 1;
const z = 2;
print(x ?? y); // 1, 우측 y값 선택
print(y ?? x); // 1, 좌측 y값 선택
print(y ?? z); // 1, 둘다 null이 아니지만 좌측 y값 선택
플러터에서 이용 사례
_image ?? const Text('No Image')
??=
const x = null;
const y = 1;
var t;
t ??= x; // t가 null이면 x를 대입하는데 x도 null이다.
print(t); // null
t ??= y; // t가 null이면 y를 대입한다.
print(t); // 1
t ??= x; // t가 null이면 x를 대입하는데 null이 아니므로 x를 대입하지 않는다.
print(t); // 1
?.
x객체가 null이 아닐 때에만 속성과 메소드에 접근한다.
x?.foo();
x?.bar
...?
const a = [
...[1, 2],
null,
];
위 결과는 [1, 2, null]이며 끝에 null이 아닌 [1, 2]가 필요하다면 아래와 같이 작성한다.
var list = [
...[1, 2],
...?newList,
];
하지만 아래 경우에는 null이 아닌 원소만 추가할 때는 if 구문으로 작성할 수 밖에 없다.
var list = [
1,
2,
if (elem() != null) elem(),
];
728x90
LIST
'Flutter' 카테고리의 다른 글
Flutter - 함수 (4) | 2023.11.02 |
---|---|
Flutter - 타입 검증 연산자 (1) | 2023.11.02 |
Flutter - 컬렉션 타입 (2) | 2023.11.01 |
Flutter - 문자열 처리 (3) | 2023.11.01 |
Flutter Package Sizer (2) | 2023.10.25 |