مقادیر منطقی در Java با نوع boolean نمایش داده میشوند؛ مقدارشان میتواند true یا false باشد.
Java از سه عملگر منطقی پشتیبانی میکند:
! (NOT): مقدار منطقی را نفی میکند.&& (AND): دو مقدار منطقی میگیرد و اگر هر دو «درست» باشند، نتیجه «درست» است.|| (OR): اگر یکی از آن دو مقدار منطقی «درست» باشد، نتیجه «درست» است.عملگرهای && و || از «ارزیابی اتصال کوتاه» استفاده میکنند، یعنی سمت راست عملگر فقط زمانی ارزیابی میشود که لازم باشد.
به این عملگرها، عملگرهای شرطی یا منطقی هم میگویند.
! در مستندات گاهی یک عملگر بیتی به شمار میرود، اما معنای متعارف 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