널 체크 대신 ?? 연산자 사용하기

널 체크 대신 ?? 연산자 사용하기

값이 null일 때 다른 값을 반환하는 패턴은 자주 쓰여요. a == null ? b : a 같은 조건식으로 쓸 수도 있지만, 이렇게 쓰면 문장이 길어지고 읽기도 불편하죠. 이 린트 규칙은 더 간결한 ?? 연산자를 쓰도록 도와줘요.

출처: prefer_if_null_operators

본문

null 체크와 조건식을 쓰는 대신 ?? 연산자를 사용하세요.

나쁜 예:

v = a == null ? b : a;

좋은 예:

v = a ?? b;

?? 연산자는 왼쪽 값이 null이면 오른쪽 값을, null이 아니라면 왼쪽 값을 그대로 돌려줘요. 같은 뜻을 훨씬 짧고 명확하게 표현할 수 있죠.

이 규칙 켜는 법

prefer_if_null_operators 규칙을 켜려면 analysis_options.yaml 파일의 linter > rules 아래에 규칙 이름을 추가하면 돼요.

linter:
  rules:
    - prefer_if_null_operators

혹시 YAML 맵 문법으로 린트 규칙을 설정하고 있다면, linter > rules 아래에 이렇게 적어주면 돼요.

linter:
  rules:
    prefer_if_null_operators: true

더 알아보기