032 두 불 표현식에 논리 AND/OR/XOR 적용
다음은 기초 논리 연산(AND와 OR, XOR)의 진리표다.
▲ 그림 1-7
자바에서는 논리 AND 연산자를 &&로, 논리 OR 연산자를 ||로, 논리 XOR 연산자를 ^로 나타낸다. JDK 8부터 두 불 표현식에 이러한 연산자를 적용하기 시작했고 Boolean.logicalAnd()와 Boolean.logicalOr(), Boolean.logicalXor()이라는 세 개의 static 메서드로 래핑했다.
int s = 10;
int m = 21;
// if (s > m && m < 50) { } else { }
if (Boolean.logicalAnd(s > m, m < 50)) {} else {}
// if (s > m || m < 50) { } else { }
if (Boolean.logicalOr(s > m, m < 50)) {} else {}
// if (s > m ^ m < 50) { } else { }
if (Boolean.logicalXor(s > m, m < 50)) {} else {}
다음 코드처럼 위 메서드를 조합해서 사용할 수도 있다.
if (Boolean.logicalAnd(
Boolean.logicalOr(s > m, m < 50),
Boolean.logicalOr(s <= m, m > 50))) {} else {}