Java에서 불리언은 boolean 타입으로 표현되며, 값은 true 또는 false 중 하나예요.
Java는 세 가지 불리언 연산자를 지원해요:
! (NOT): 불리언 값을 부정해요&& (AND): 불리언 두 개를 받아서 둘 다 true이면 true가 돼요|| (OR): 두 불리언 중 하나라도 true이면 true가 돼요&&와 || 연산자는 _단축 평가_를 사용해요. 즉, 연산자의 오른쪽 항은 필요할 때만 평가돼요.
이 연산자들은 조건 연산자나 논리 연산자라고도 불러요.
문서에서는 !를 비트 연산으로 분류하기도 하지만, !는 일반적인 NOT 의미를 지녀요.
true || false // => true
false || false // => false
false || true // => true
true && false // => false
true && true // => true
!true // => false
!false // => true
세 가지 불리언 연산자는 각각 연산자 우선순위가 달라요.
그래서 not이 가장 먼저, &&가 그다음, ||가 마지막 순서로 평가돼요.
이 규칙에서 '벗어나고' 싶다면 불리언 표현식을 괄호(())로 감싸면 돼요. 괄호는 연산자 우선순위가 더 높기 때문이에요.
!true && false // => false
!(true && false) // => true