'== false'에 대해

CaChiJ·2021년 6월 4일
0

👀 == false?

다음과 같은 코드를 보게 되었다.

if ({불리언 변수} == false)
{
    // 코드
}

'!'를 사용하면 '== false'를 빼도 된다고 지적하자 코드 작성자께서는 '!' 연산자가 오히려 읽기 불편하다고 말씀하셨다. 실제로 그럴듯하게 들린다. '!'는 눈에 잘 띄지 않기 때문이다. 그래서 이 주제를 구글링해보았다. 다음은 이 주제에 관한 Stack Overflow 질문글이다.

글1: Using if (!bool) vs if (bool == false) in C#
글2: Is it bad to explicitly compare against boolean constants e.g. if (b == false) in Java?

이 글들을 요약하면 다음과 같다.

  1. '!'가 조금 더 빠르다. (but 컴파일러에 따라 최적화가 될 수도 있음)
  2. 일반적으로 '!'를 사용한다. (적어도 위 글들에서는)
  3. '== false'가 읽기 편하다고 말하는 사람들도 있다.
  4. NULL이 들어갈 수 있는 경우(C#의 Nullable)에는 '== false'가 유용하게 사용된다.

📌 결론

필자는 앞으로도 '!'를 사용하려 한다. 위 글에서도 언급되어 있듯이 '!'는 다음과 같은 우위를 갖고 있다.

  1. 조금 더 빠르다
  2. 일반적인 스타일이다

그리고 '!'에 익숙해지면 그다지 헷갈리지도 않는다. '!'보다 '== false'가 편한 사람들은 아직 코드에 익숙하지 않은 게 아닐까 생각한다.

0개의 댓글