freeCodeCamp/guide/arabic/java/loops/infinite-loops/index.md

2.4 KiB

title localeTitle
Infinite Loops حلقات لا نهائية

حلقات لا نهائية

حلقة infinte هي عبارة for عبارة حلقة ( for ، while ، do-while ) لا تنتهي من تلقاء نفسها.

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

أمثلة:

`// Infinite For Loop for ( ; ; ) { // some code here }

// Infinite While Loop while (true) { // some code here }

// Infinite Do While Loop do { // some code here } while (true); `

عادةً ، إذا كان يتم تشغيل الحلقة الخاصة بك بشكل لا نهائي ، فهذا خطأ لا ينبغي أن يحدث لأن حلقة لا نهائية لا تتوقف وتمنع بقية البرنامج من التشغيل.

`for(int i=0;i<100;i++){

if(i==49){ 
i=0; 
} 

} `

يتم تشغيل الحلقة أعلاه بشكل لا نهائي لأن كل مرة أقترب فيها من 49 ، يتم تعيينها إلى 0. هذا يعني أني لم تصل إلى 100 لإنهاء الحلقة ، لذا فإن الحلقة هي حلقة لا نهائية.

لكن برنامجًا عالقًا في حلقة كهذه سيستمر في استخدام موارد الكمبيوتر إلى أجل غير مسمى. هذا غير مرغوب فيه ، وهو نوع من "خطأ وقت التشغيل".

لمنع الخطأ ، يقوم المبرمجون باستخدام عبارة فاصل للخروج من الحلقة. الكسر ينفذ فقط تحت شرط معين. استخدام بيان تحديد مثل if else يضمن نفسه.

`while (true) { // do something

if(conditionToEndLoop == true) 
    break; 

// do more 

} `

الميزة الرئيسية لاستخدام حلقة لا نهائية عبر حلقة منتظمة هي قابلية القراءة.

في بعض الأحيان ، يكون من السهل فهم جسم الحلقة إذا انتهت الحلقة في المنتصف ، وليس في النهاية / البداية. في مثل هذه الحالة ، ستكون حلقة لا نهائية خيارًا أفضل.