English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدرس، ستعرف جمل التحكم في جافا باستخدام جمل if و if ... else.
في البرمجة الحاسوبية، عادة ما نرغب في تنفيذ جزء معين من الكود بناءً على شرط معين هو true أو false (نعلم به فقط عند تشغيله). في هذه الحالة، سنستخدم جمل التحكم.
في جافا،if-thenيكون جملة الأسلوب:
if (expression) { // نص }
هذه هي تعبير بولي (expression). تعبير بولي يعود إلى true أو false.
إذا كانت نتائج الحساب للعبارات هي true، فإنه سيتم تنفيذ الجسم الخاص by if (النصوص داخل الأقواس الكبيرة)
إذا كانت نتائج الحساب للعبارات هي false، فإن النصوص داخل الجسم الخاص by if سيقفز.
class IfStatement { public static void main(String[] args) { int number = 10; //التحقق من whether العدد أكبر من 0 if (number > 0) { System.out.println("هذا العدد إيجابي."); } System.out.println("هذا التعليق الداخلي دائمًا ما يتم تنفيذه."); } }
Output:
رقم هذا هو إيجابي. هذه الجملة يتم تنفيذها دائمًا.
في هذا المثال،لدينا متغير يُدعى number.في هذا السياق،يُتحقق تعبير الاختبار من أن number أكبر من 0 (number > 0).
بسبب أن number أكبر من 0. لذلك،结果是 true لمعادلة التحقق. في نفس الوقت، سينفذ الكود داخل if.
الآن،قم بتغيير قيمة number إلى عدد سالب.تخيل أن يكون -5.
int number = -5;
إذا كنا نستخدم القيمة الجديدة لتنفيذ البرنامج السابق number،فسيكون الناتج هو:
هذه الجملة يتم تنفيذها دائمًا.
في هذا المكان،قيمة number أقل من 0.لذلك،نتيجة حساب تعبير الاختبار number > 0 هي خطأ.لذلك،لن يتم تنفيذ الجملة داخل if.
للحصول على معلومات إضافية حول تعبير الاختبار،يرجى زيارةعمليات الحساب العلاقية في Java والعمليات الحساب المنطقية في Java.
إذا كانت نتيجة اختبار جملة if صحيحًا،فسيتم تنفيذ جزء محدد من الكود.لكن إذا كانت نتيجة اختبار تعبير الاختبار خطأًفسيتم تنفيذ أي شيء.
في هذه الحالة،يمكننا استخدام كتلة else الاختيارية.إذا كانت نتيجة حساب تعبير الاختبار خطأًفسيتم تنفيذ الجملة داخل الكتلة.if-then-elseالجملة.
if-then-elseيكون جملة الأسلوب:
if (expression) { //كود } else { // كود آخر }
في هذا المكان،إذا كانت تعبير الاختبار صحيحًا،سيقوم برنامجنا بتنفيذ مهمة واحدة (المهمة داخل كتلة if)،إذا كانت تعبير الاختبار خطأًفسيقوم بتنفيذ مهمة أخرى (المهمة داخل كتلة else).
class IfElse { public static void main(String[] args) { int number = 10; //التحقق من whether العدد أكبر من 0 if (number > 0) { System.out.println("هذا الرقم هو عدد إيجابي."); } else { System.out.println("هذا الرقم ليس عددًا إيجابيًا."); } System.out.println("This statement is always executed."); } }
Output:
هذا الرقم هو عدد إيجابي. هذه الجملة يتم تنفيذها دائمًا.
في هذا المثال،لدينا متغير يُدعى number.في هذا السياق،يُتحقق تعبير الاختبار من أن number أكبر من 0 (number > 0).
بسبب أن قيمة number هي 10،نتيجة حساب تعبير الاختبار هي صحيح.لذلك،سيتم تنفيذ الكود داخل if.
الآن،قم بتغيير قيمة number إلى عدد سالب.على سبيل المثال،-5.
int number = -5;
إذا كنا نستخدم القيمة الجديدة لتنفيذ برنامج number،فسيكون الناتج هو:
هذا الرقم ليس عددًا إيجابيًا. هذه الجملة يتم تنفيذها دائمًا.
في هذا المكان،قيمة number هي -5.لذلك،نتيجة حساب تعبير الاختبار هي خطأ.لذا سيتم تنفيذ الكود داخل else.
في Java، لديناif ... else ... if جملة درجية، يمكن استخدامها لتنفيذ أحد الكتل الأخرى بين الكتل الأخرى.
if (expression1) { //كود } else if(expression2) { //كود } else if (expression3) { //كود } . . else { //كود }
في هذا المثال، تنفذ جملة if من الأعلى إلى الأسفل. بمجرد أن تصبح تعبير الاختبار true، يتم تنفيذ الأحرف الموجودة داخل جسم الجملة if. ثم، ينتقل التحكم في البرنامج إلى خارج جملة if-else-if.
إذا كانت جميع تعبيرات الاختبار false، يتم تنفيذ الأحرف الموجودة داخل الجسم else.
class Ladder { public static void main(String[] args) { int number = 0; //التحقق من whether العدد أكبر من 0 if (number > 0) { System.out.println("هذا العدد إيجابي."); } //التحقق من whether العدد أقل من 0 else if (number < 0) { System.out.println("هذا العدد سالب."); } else { System.out.println("العدد هو 0."); } } }
Output:
العدد هو 0.
في المثال السابق، نحن نتحقق مما إذا كان number إيجابيًا، سالبًا أم صفر. هنا، لدينا تعبيرين اختباريين:
number > 0 - التحقق من whether number أكبر من 0
number < 0 - التحقق من whether number أقل من 0
في هذا المثال، قيمة number هي 0. لذلك، نتائج حساب كل من التعبيرات الاختبارية هي false. لذلك، تم تنفيذ الأحرف الموجودة داخل الجسم else.
في Java، يمكنك أيضًا وضع جملة if..else داخل جملة if..else. هذا يُدعى جملة if...else داخلية.
هذا برنامج يبحث عن أكبر عدد من بين ثلاثة أرقام:
class Number { public static void main(String[] args) { //声明双精度类型变量 Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largestNumber; //检查n1是否大于或等于n2 if (n1 >= n2) { //if ... else语句在if块内 // Check if n1 is greater than or equal to n3 if (n1 >= n3) { largestNumber = n1; } else { largestNumber = n3; } } // if...else statement in the else block // Check if n2 is greater than or equal to n3 largestNumber = n2; else { } largestNumber = n3; } } System.out.println("The largest number is " + largestNumber); } }
Output:
The largest number is 4.5
Note:In the above program, we ourselves assigned the value of the variable to simplify the demonstration process. However, in actual applications, these values may come from user input data, log files, form submissions, and so on.
Java provides a feature calledternary operatorspecial operationa, it isif ... elseA shorthand form of a statement. To understand the ternary operator, please visitJava Ternary Operator.