English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

تحكم العملية في Java

Java Arrays

Java متجهات الأشياء(I)

Java Object-Oriented (II)

Java Object-Oriented (III)

معالجة الاستثناء Java

Java List

Java Queue (queue)

Java Map collection

Java Set collection

Java Input/Output (I/O)

Java Reader/Writer

Java other topics

كلمة break Java

في هذا الدرس، ستعلم جملة break، التي يتم تسميتها break statement في جافا.

عند استخدام الدورات، في بعض الأحيان قد نرغب في تجاوز بعض الجمل في الدورة أو إنهاء الدورة على الفور دون فحص تعبير التحقق.

في هذه الحالة، سيتم استخدام جمل break وcontinue. ستعلمها في الفصل التاليجملة continue.

جملة break في جافا تنهي الدورة على الفور، وتنقل السيطرة إلى الجملة التالية للدورة.

استخدام break statement تقريبًا دائمًا مع جمل القرار (جافا if ... else statement) معًا.

هذا هو بناء جملة break في جافا:

break;

كيف تعمل جملة break؟

diagram workflow for Java break statement

مثال 1: جافا break statement

class Test {
    public static void main(String[] args) {}}
      
        //دورة for
        for (int i = 1; i <= 10; ++i) {
            //إذا كانت قيمة i تساوي 5، فإن الدورة تنتهي 
            if (i == 5) {
                break;
            }      
            System.out.println(i);
        }   
    }
}

Output:

1
2
3
4

في البرنامج أعلاه، استخدمنا دورة for لطباعة قيمة i في كل تكرار. للحصول على فهم أفضل لعملية دورة for، يرجى زيارةJava for loop. يرجى ملاحظة الجمل التالية:

if (i == 5) {
    break;
}

هذا يعني أن قيمة i تساوي 5، فإن الدورة تنتهي. لذلك، نحصل على القيم الأقل من 5.

مثال 2: جافا break statement

هذا البرنامج يحسب مجموع الأرقام المدخلة من المستخدم حتى يتم إدخال عدد سالب.

لإستقبال المدخلات من المستخدم، استخدمنا هذا كائن Scanner. للحصول على معلومات إضافية حول Scanner، يرجى زيارةJava Scanner.

import java.util.Scanner;
class UserInputSum {
    public static void main(String[] args) {}}
      
        Double number, مجموع = 0.0;
        //إنشاء كائن Scanner
        Scanner input = new Scanner(System.in);
      
        while (true) {
            System.out.print("أدخل عدد: ");
            //استقبال المدخلات المزدوجة للمستخدم
            عدد = input.nextDouble();
         
            //إذا كان number سالبًا، تنهي الدورة
            if (number < 0.0) {
                break;
            }
         
           sum += number;
        }
        System.out.println("جمع = " + sum);
    }
}

Output:

أدخل عدد: 3.2
أدخل عدد: 5
أدخل عدد: 2.3
أدخل عدد: 0
أدخل عدد: -4.5
الجمع = 10.5

في البرنامج المذكور أعلاه، يكون تعبير اختبار الدورة while دائمًا صحيحًا. انتبه إلى هذا السطر،

if (number < 0.0) {
    break;
}

هذا يعني أن الدورة while تنهي عند إدخال المستخدم عدد سالب.

Java和中قاطع الدورات المدمجة

للمالدورات المدمجة، تنهي جملة break الدورة الداخلية الأكثر

تخطيط العمل لجملة break باستخدام الدورات المدمجة

في هذا السياق، تنهي جملة break الدورة الداخلية الأكثر وسيطرة البرنامج تنقذ إلى الدورة الخارجية.

جملة break الموسومة

حتى الآن، لقد استخدمنا جملة break غير الموسومة. إنها تنهي الدورة الأكثر داخليًا وجملة switch. ولكن، هناك نوع آخر من جملة break في Java يُدعى break الموسوم.

يمكننا أيضًا استخدام جملة break الموسومة لإنهاء الدورة الخارجية الأكثر.

تخطيط العمل لجملة break الموسومة في Java

كما هو موضح في الشكل أعلاه، نستخدم ميزة label لتعيين الدورة الخارجية. الان، لاحظ كيف نستخدم جملة break هذه (break label;).

في هذا السياق، تنهي جملة break الجملة الموسومة (أي الدورة الخارجية). ثم، يقفز البرنامج إلى الجملة التالية بعد الجملة الموسومة.

هذا مثال آخر:

while (testExpression) {
   // الكود
   second:
   while (testExpression) {
      // الكود
      while(testExpression) {
         // الكود
         break second;
      }
   }
   //السيطرة تنتقل إلى هنا
}

في المثال السابق، عند تنفيذ جملة break second; بعد التنفيذ، يتم إنهاء الدورة الموسومة Second. كما يتم نقل سيطرة البرنامج بعد الدورة second إلى هذه الجملة.

مثال 3: جملة break الموسومة

class LabeledBreak {
    public static void main(String[] args) {}}
   
        // for loop marked as first 
        first:
        for( int i = 1; i < 5; i++) {
            // for loop marked as second
            second:
            for(int j = 1; j < 3; j++) {
                System.out.println("i = " + i + "; j = " + j);
             
                //جملة break تنهي الدورة الأولى
                if ( i == 2 )
                    break first;
            }
        }
    }
}

Output:

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1

في المثال السابق، استخدمت جملة break labeled break لتوقف الدورة الموسومة first. هذا هو،

first:
for(int i = 1; i < 5; i++) {...}

في هذا السياق، إذا قمنا بتغيير break first; إلى break second;سيتغير سلوك البرنامج. في هذه الحالة، سيتم إنهاء الدورة الموسومة second. على سبيل المثال،

class LabeledBreak {
    public static void main(String[] args) {}}
      
        // for loop marked as first
        first:
        for( int i = 1; i < 5; i++) {
            // for loop marked as second
            second:
            for(int j = 1; j < 3; j++) {
                System.out.println("i = " + i + "; j = " + j);
       
                // break statement terminates the loop marked as second  
                if ( i == 2 )
                    break second;
            }
        }
    }
}

Output:

i = 1; j = 1
i = 1; j = 2
i = 2; j = 1
i = 3; j = 1
i = 3; j = 2
i = 4; j = 1
i = 4; j = 2

Note: break statement is also used to terminate the case in the switch statement. For more information, please visitجملة switch Java.