break وcontinue والتسميات
تحكّم في تدفق الحلقة بدقة
break وcontinue والتسميات درس مجاني في Dart Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Dart Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Dart Academy 4 دروس في المجموع.
التحكم في حلقة التكرار
أحيانًا تحتاج إلى التوقف مبكرًا أو تخطي تكرار. يوفّر لك Dart تعليمتَي break وcontinue للتحكم في الحلقة من داخلها. 🕹️
التعرف إلى break
توقف تعليمة break الحلقة فورًا، ثم تنتقل إلى الشيفرة التي تليها مباشرةً. ولن يُنفّذ أي تكرار آخر.
for (var i = 0; i < 10; i++) {
if (i == 3) break;
print(i);
}التوقف عند التطابق
من الاستخدامات الشائعة لـ break البحث: مرّر على قائمة وتوقف فور العثور على ما تريده، لتوفّر العمل غير الضروري.
for (var n in nums) {
if (n == target) break;
}التعرف إلى continue
تتخطى تعليمة continue بقية التكرار الحالي، وتنتقل مباشرةً إلى التكرار التالي من الحلقة.
for (var i = 0; i < 5; i++) {
if (i == 2) continue;
print(i);
}التصفية باستخدام continue
استخدم continue من أجل تخطي العناصر التي لا تهمك، مثل تجاهل الأعداد الفردية وتنفيذ الإجراء على الأعداد الزوجية فقط.
for (var n in nums) {
if (n.isOdd) continue;
print(n);
}break مقابل continue
احفظ الفرق بينهما: تنهي break الحلقة بأكملها، بينما تنهي continue التكرار الحالي فقط وتنتقل إلى التالي.
تؤثر في الحلقة الداخلية
تؤثر break وcontinue افتراضيًا في أقرب حلقة محيطة فقط. ولا يمكن لحلقة داخلية إيقاف حلقة خارجية بهذه الطريقة.
for (var i = 0; i < 2; i++) {
for (var j = 0; j < 5; j++) {
if (j == 1) break; // inner only
}
}سبب وجود التسميات
للتحكم في حلقة خارجية من داخل حلقة متداخلة، أضف تسمية: اسمًا متبوعًا بنقطتين موضوعًا قبل الحلقة.
outer:
for (var i = 0; i < 3; i++) {
// ...
}break مع تسمية
تؤدي كتابة break مع تسمية إلى الخروج من الحلقة المسماة بالكامل، حتى من داخل حلقة داخلية متداخلة بعمق.
outer:
for (var i = 0; i < 3; i++) {
for (var j = 0; j < 3; j++) {
if (j == 1) break outer;
}
}continue مع تسمية
ينتقل continue المسمى إلى التكرار التالي من الحلقة الخارجية المسماة، متخطيًا بقية جسمي الحلقتين الداخلية والخارجية.
outer:
for (var i = 0; i < 3; i++) {
for (var j = 0; j < 3; j++) {
if (j == 1) continue outer;
}
}استخدم التسميات باعتدال
التسميات قوية، لكنها قد تضر سهولة القراءة. استخدمها فقط مع الحلقات المتداخلة، وفضّل دالة مساعدة متى أمكن.
تحقق سريع
أثناء وجودك داخل حلقة، وصلت إلى continue. ماذا يحدث بعد ذلك؟
مراجعة
تعلمت التحكم في الحلقات: توقف break الحلقة، ويتخطى continue التكرار، وتتيح لك التسميات استهداف حلقة خارجية من داخل حلقة متداخلة. 🎯
تعلم Dart مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 30
- الدروس
- 120
الأسئلة الشائعة
هل درس «break وcontinue والتسميات» مجاني؟
نعم — نص درس «break وcontinue والتسميات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Dart Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Dart Academy 4 دروس في المجموع.
ماذا ستتعلم في «break وcontinue والتسميات»؟
تحكّم في تدفق الحلقة بدقة تتمرن على Dart Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Dart Academy؟
لا تُشترط خبرة سابقة. Dart Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «break وcontinue والتسميات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Dart Academy هذا؟
نعم. كل درس في Dart Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- حلقة for التقليدية
- حلقتا while وdo-while
- for-in على المجموعات
- break وcontinue والتسميات