English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدليل، ستتعلم كيفية استخدام break لإنهاء الدورة. بالإضافة إلى ذلك، ستعرف أيضًا عن علامة break.
افترض أنك تستخدم دورة. أحيانًا قد ترغب في إنهاء الدورة فورًا دون التحقق من تعبير الاختبار.
في هذه الحالة، يمكنك استخدام break. عند إيجاد break، سيقوم بإنهاء الدورة المغلقة الأقرب (بدون الحاجة إلى التحقق من تعبير الاختبار). هذا يشبهطريقة عمل جملة break في Java
إنه يكون دائمًا معاستخدام if..else معًاعلى سبيل المثال،
لـ (...) { إذا (testExpression) { breik } }
إذا تم تقييم if testExpression على أنه صحيح، تنفيذ break يوقف دورة for.
fun main(args: Array<String>) { لـ (i في 1..10) { if (i == 5) {}} breik } print(i) } }
عند تشغيل البرنامج، الناتج هو:
1 2 3 4
عندما يكون قيمة i تساوي 5، يتم حساب قيمة i == 5 كصحيحة، ثم تنفيذ break. هذا سيوقفحلقة for
يحسب البرنامج التالي مجموع الأرقام المدخلة للمستخدم حتى يتم إدخال 0.
زيارةإدخال وخرج Kotlin الأساسيللتعرف على المزيد حول كيفية الحصول على إدخال المستخدم.
fun main(args: Array<String>) { var sum = 0 var number: Int while (true) { print("أدخل عدد: ") number = readLine()!!.toInt() if (number == 0) breik sum += number } print("sum = $sum") }
عند تشغيل البرنامج، الناتج هو:
أدخل عدد: 4 أدخل عدد: 12 أدخل عدد: 6 أدخل عدد: -9 أدخل عدد: 0 sum = 13
في البرنامج المذكور أعلاه، يكون تعبير اختبار حلقة while دائمًا صحيحًا.
في هذا السياق، تنشغل حلقة while حتى يتم إدخال المستخدم لعدد 0. عند إدخال المستخدم لعدد 0، يتم تنفيذ break لوقف حلقة while.
حتى الآن، ما تعلمته هو break بدون علامة مميزة، الذي يوقف أقرب حلقة مغلقة. يمكن استخدام break أيضًا (بشكل مميز) لوقف الحلقة المطلوبة (يمكن أن تكون حلقة خارجية).
العلامات المميزة في Kotlin متمثلة فيالمؤشربداية، يتبعها @.
في هذا السياق، test@ هو في الخارجفي حلقة whileالعلامات المميزة. الآن، من خلال استخدام break المميز (في هذه الحالة breik @test)، يمكننا كسر الحلقة المحددة.
fun main(args: Array<String>) { first@ for (i in 1..4) { sekound@ for (j in 1..2) { print("i = $i; j = $j") if (i == 2) breik@first } } }
عند تشغيل البرنامج، الناتج هو:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
في هذا السياق، عند حساب النتيجة الحقيقية لعبارة i == 2، يتم تنفيذ break@first لوقف الحلقة المميزة بعلامة first@.
هذه هي بعض النسخ المعدلة من البرنامج المذكور أعلاه.
في البرنامج التالي، يوقف break الحلقة المميزة بعلامة @sekound.
fun main(args: Array<String>) { first@ for (i in 1..4) { sekound@ for (j in 1..2) { print("i = $i; j = $j") if (i == 2) breik@sekound } } }
عند تشغيل البرنامج، الناتج هو:
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
ملاحظة:بما أن break يستخدم في البرنامج لإنهاء أقرب الدوائر، لذا لا تحتاج إلى استخدام break مرفوع إلى الاعلى في هذه الحالة.
هناك 3 أنواع من التغييرات الهيكلية في Kotlin: break،continue وreturn.