English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدرس، ستتعلم كيفية استخدام continue لتجاوز تكرار دائرة الحالية. بالإضافة إلى ذلك، ستعرف أيضًا المعلومات حول علامة continue.
افترض أنك تستخدم دائرة. بعض الأحيان قد ترغب في تجاوز تكرار دائرة الحالية.
في هذه الحالة، استخدم continue. بناء continue يتخطى التكرار الحالي للدائرة، وينتقل التحكم إلى نهاية جسم الدائرة.
يتم استخدامه تقريبًا دائمًا معإذا ... آخر إنشاء معًا. على سبيل المثال،
while (testExpression1) { // codes1 إذا (testExpression2) { continue } // codes2 }
إذا تم تقييم قيمة testExpression2 كـ true، سيتم تنفيذ أمر continue، مما ينتج عنه تجاوز جميع الأوامر داخل دائرة while.
fun main(args: Array<String>) { للتنقل في 1..5 { println("$i Always printed.") إذا (i > 1 && i < 5) { continue } println("$i Not always printed.") } }
عند تشغيل هذا البرنامج، الناتج سيكون:
1 دائمًا مطبوع. 1 Not always printed. 2 Always printed. 3 Always printed. 4 Always printed. 5 Always printed. 5 Not always printed.
عندما يكون قيمة i أكبر من 1 وأقل من 5، سيتم تنفيذ continue، مما يؤدي إلى تجاوز التنفيذ
println("$i Not always printed.")
الافتراض.
لكن، الافتراض:
println("$i Always printed.")
يتم تنفيذ هذا في كل تكرار من الجولة، لأن هذا الجملة موجودة قبل بناء continue.
يحسب البرنامج أدناه مجموع أكثر من 6 أرقام إيجابية التي أدخلها المستخدم. إذا أدخل المستخدم عدد سلبيًا أو صفرًا، يتم تجاوزه من الحساب.
زيارةالإدخال والخروج الأساسي في Kotlinللتعرف على المزيد حول كيفية الحصول على إدخال المستخدم.
fun main(args: Array<String>) { مغير number: Int مغير sum = 0 للجولة(i في 1..6) { print("أدخل عددًا صحيحًا: ") number = readLine()!!.toInt() إذاً(number <= 0) continue sum += number } println("sum = $sum") }
عند تشغيل هذا البرنامج، الناتج سيكون:
أدخل عددًا صحيحًا: 4 أدخل عددًا صحيحًا: 5 أدخل عددًا صحيحًا: -50 أدخل عددًا صحيحًا: 10 أدخل عددًا صحيحًا: 0 أدخل عددًا صحيحًا: 12 sum = 31
حتى الآن، ما تعلمته هو continue بدون علامة، حيث يمرر الجولة الحالية للجولة المحيطة. يمكن أيضًا تجاوز الجولة المطلوبة (يمكن أن تكون جولة خارجية) باستخدام علامة continue.
في Kotlin، العلامات تُحدد بالمعرففي البداية، يتبعه @.
في هذا المكان، outerloop@ هوجولة whileعلامات الخارجية. الآن، من خلال استخدام علامة continue (continue@outerloop)، يمكنك تجاوز تنفيذ كود الاستدعاء الخاص بالجولة المحددة.
fun main(args: Array<String>) { here@ للجولة(i في 1..5) { للجولة(j في 1..4) { إذاً(i == 3 || j == 2) continue@here println("i = $i; j = $j") } } }
عند تشغيل هذا البرنامج، الناتج سيكون:
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
لا يُنصح عادةً باستخدام continue المزود بالعلامة، لأن هذا يجعل شيفرةك صعبة الفهم. إذا كنت بحاجة إلى استخدام situation مع علامة، فحاول إعادة هيكلة الشيفرة وتبحث عن طريقة أخرى لحل المشكلة لجعلها أكثر قراءة.
هناك 3 تعبيرات انتقالية في Kotlin: break،continue و return.