Re: 25.4 질문드립니다.
, 도장_ 관리자님이 작성표현식 A, B가 있을 때
A && B는
A가 false이면 결과는 false
B가 false이면 결과는 false
즉, 둘 중에 하나가 false이면 false입니다.
A || B는
A가 true이면 결과는 true
B가 true이면 결과는 true
둘 중에 하나만 true이면 true
A && B에서는 A가 false이면 어차피 결과는 false이니
B 표현식을 평가할 필요가 없습니다.
false && true || true 와 false && (true || true)를 물어봤지만
false && true || true에서
&&가 우선순위가 높으니까 정확히는
(false && true) || true입니다.
그러나 false || true이고 결과는 true입니다.
false && (true || true)는 &&이고 false이니 결과는 false입니다.
A || B에서
A를 먼저 계산하든, B를 먼저 계산하든
둘 중에 하나만 true이면 true이니까
결과는 언제가 같은 게 OR 연산자의 특징입니다.
우선순위에 의존하는 코딩은 읽기 어려우니 명확하게 괄호를 사용하세요