prefer_null_aware_operators
prefer_null_aware_operators
Dart 분석기(analyzer)가 만들어 내는 'prefer_null_aware_operators' 진단에 대한 설명이에요. 명시적인 null 비교 대신 null-aware 연산자 ?.를 사용하라는 규칙이에요.
본문
설명
분석기는 멤버 참조를 보호하기 위해 null과의 비교가 쓰이고, 보호 대상이 null일 때 결과로 null이 사용되는 상황에서 이 진단을 만들어 내요.
예시
다음 코드는 기본값이 null임에도 length 호출을 null 비교로 보호하고 있기 때문에 이 진단이 발생해요:
int? f(List<int>? p) {
return p == null ? null : p.length;
}
일반적인 수정 방법
대신 null-aware 접근 연산자를 사용해요:
int? f(List<int>? p) {
return p?.length;
}