عملگرهای منطقی
چندین عملگر منطقی باینری و یک تک عملگر وجود دارد. آرگومان های همه این عملگرها عبارتند از لفظ های منطقی (ثابت)، متغیرهای منطقی و عباراتی که دارای مقدار منطقی هستند.
اپراتورها:
!
- «نفی»، یک عملگر واحد، معنی را به عکس تغییر می دهد (معکوس می کند: دروغ را به حقیقت، و حقیقت را به دروغ تبدیل می کند).
&&
- "و" منطقی ("ارتباط"، "تقاطع")، یک عملیات باینری، اگر و فقط اگر هر دو عملوند درست باشند، true را برمی گرداند.
||
- منطقی "یا" ("انفکاک"، "اتحاد")، عملیات باینری، مقدار واقعی را زمانی برمی گرداند که حداقل یکی از عملوندها درست باشد.
عملگرهای منطقی دارای اولویت زیر هستند: نفی، ربط، تفکیک. همانطور که در مورد عملگرهای حسابی، از پرانتز برای تصحیح تقدم استفاده می شود. اگر یک جفت پرانتز درون یک جفت پرانتز دیگر قرار گیرد، ابتدا مقدار درون پرانتز ارزیابی میشود. مثال ها:
boolean a = true;
boolean b;
b = a || true;
b = !b;
System.out.println(b);
a = a || b;
boolean c;
c = a && (a||b);
System.out.println(c);
در جاوا نمی توان انواع بولی و عددی را به یکدیگر تبدیل کرد.
اپراتورهای مقایسه
اکثر عملگرهای مقایسه برای مقادیر عددی اعمال می شوند. اینها همه عملگرهای باینری هستند که دو آرگومان عددی دارند، اما یک مقدار بولی برمیگردانند.
>
- اپراتور "بیشتر".
>=
- عملگر "بیشتر یا مساوی".
<
- اپراتور "کمتر از".
<=
- عملگر "کمتر یا مساوی".
!=
- اپراتور «برابر نیست».
==
- عملگر هم ارزی (برابری).
دو عملگر آخر نه تنها برای مقادیر عددی، بلکه به عنوان مثال برای مقادیر منطقی نیز قابل استفاده هستند. مثال ها:
boolean m;
m = 5 >= 4;
m = 5 != 5 || false;
boolean w;
w = m == false;
System.out.println(w);
بسیار مهم است که عملگر هم ارزی را با عملگر انتساب اشتباه نگیرید. در عباراتی که شامل عملگرهایی از انواع مختلف است، ابتدا عملیات حسابی انجام می شود، سپس عملیات مقایسه، سپس عملیات منطقی و در آخر انتساب انجام می شود.
بیانیه if شرطی
اپراتور
if
اطمینان حاصل می کند که یک دستورالعمل بسته به یک شرایط منطقی مشخص اجرا یا نادیده گرفته می شود. اگر شرط درست باشد،
دستور اجرا می شود.
if (condition) инструкция;
به جای یک دستورالعمل می تواند یک دستورالعمل معمولی (یک دستور) یا یک دستور مرکب (یک بلوک حاوی چندین دستور، از جمله سایر دستورات شرطی) وجود داشته باشد. مثال ها (اگر صفر به عنوان مقادیر متغیر مشخص شده باشد، تقسیم انجام نمی شود و نتیجه آن روی صفحه نمایش داده نمی شود):
int a = 25;
if (a != 0) System.out.println( 100/a );
int b = 25;
if (b != 0) {
System.out.println( 100/b );
}
با وجود این واقعیت که کد در مثال اول فشرده تر به نظر می رسد، فقط در مثال دوم می توان چندین دستورالعمل را در صورت درست بودن شرط اجرا کرد. اپراتور
if
دارای یک قالب با یک بخش اضافی است
else
:
if (condition)
инструкция1;
else
инструкция2;
اگر
شرط درست باشد، یک دستور ساده یا مرکب ۱ و اگر شرط نادرست باشد، یک
دستور ساده یا مرکب ۲ اجرا میشود . مثال:
int a = 0;
if (a != 0) System.out.println( 100/a );
else System.out.println("На нуль делить нельзя");
GO TO FULL VERSION