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

جملة continue Swift

في هذا المقال، ستتعلم كيفية استخدام جملة continue لتحويل السيطرة على البرنامج.

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

في هذه الحالة، سيتم استخدام جملة break وcontinue. اذهب إلى هذه الصفحة لمعرفة المزيد عنجملة breakالمزيد من المعلومات.

تتوقف جملة continue على تنفيذ الدورة أو جملة switch داخل الدورة. ثم، سيعود إلى تقييم جملة الاختبار للدورة.

نص جملة continue هو:

continue

كيف يعمل جملة continue؟

مثال 1: جملة continue في الدورة for في Swift

for i in 1...5 {
    if i == 4 {
        continue
    }
    print("i = \(i)")
}

عند تشغيل هذا البرنامج، الناتج هو:

i = 1
i = 2
i = 3
i = 5

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

قيمة i تُضبط لتكون الرقم الأول في range(1) وتُحديث في كل تكرار إلى الرقم التالي في النطاق.

الدورة تضم جملة i = = 4 في if. عند تقييم جملة true (في التكرار الرابع) تنفيذ جملة continue، تمرير تنفيذ جملة print("i = (i)")، والانتقال إلى التكرار التالي (i = 5).

مثال 2: جملة continue في دورة while في Swift

var intialLevel:Int = -5, finalLevel:Int = 2
var currentLevel:Int = intialLevel
while currentLevel < finalLevel {
    if intialLevel < 0 {
        print("المستوى الا�始ي يجب أن يكون عددًا إيجابيًا")
        intialLevel = 0
        currentLevel = intialLevel
        continue // تجاوز التنفيذ الحالي
    }
    currentLevel += 1
    print("المستوى التالي")
}
print("خارج دورة while")

عند تشغيل هذا البرنامج، الناتج هو:

المستوى الا�始ي يجب أن يكون عددًا إيجابيًا
المستوى التالي
المستوى التالي
خارج دورة while

في البرنامج أعلاه، دورة while تعمل حتى يكون currentLevel أقل من finalLevel. بسبب أن قيمة initialLevel الم分配ة هي -5 وهي أقل من 0، يتم تنفيذ الجملة الداخلية في if.

عندما يصل البرنامج إلى جملة continue، يقوم بتجاوز جملة while، ثم يتحقق من شرط currentLevel<finalLevel مرة أخرى.

مثال 3: جملة continue في Swift مع دوائر مدمجة

for j in 1...2 {
    for i in 1...5 {
        if i == 4 {
            continue
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

عند تشغيل هذا البرنامج، الناتج هو:

i = 1
i = 2
i = 3
i = 5
j = 1
i = 1
i = 2
i = 3
i = 5

في البرنامج أعلاه، جملة continue في if i==4 تقوم بتجاوز تنفيذ جملة print("i=\(i)") في الدورة الداخلية فقط. ولكنها لن تجاوز تنفيذ الدورة الخارجية for i in 1...5.

لكن ماذا إذا كنت تريد أيضًا continue في الدورة الخارجية؟ من أجل ذلك، يجب عليك استخدام جملة مسمى في Swift.

الجملة المشاركة في label

الجمل التي تبدأ بـ (label: Statement) تسمى جملة مسمى. هو معرف، يمكنك مراجعته في جمل break أو continue لاحقاً.

كيف يعمل جملة label مع continue؟

هنا،label هو معرف. عند تنفيذ جملة continue، يقوم البرنامج بتجاوز البقية من الدوال في الدورة، ويقفز إلى الجملة التي تبدأ بlabel.

مثال 4: جملة مع علامة continue

outerloop: for j in 1...2 {
    innerloop: for i in 1...5 {
        if i == 4 {
            continue outerloop
        }
        print("i = \(i)")
    }
    print("j = \(j)")
}

عند تشغيل هذا البرنامج، الناتج هو:

i = 1
i = 2
i = 3
i = 1
i = 2
i = 3

في البرنامج المذكور أعلاه، هناك جملتان مختطبتان outerloop: for j in 1...2 و innerloop: for i in 1...5.

يمكن استخدام أسماء العلامات outerloop و innerloop مع جملة continue.

في البرنامج، استخدمنا جملة continue outerloop لتخطي تنفيذ الأوامر في الدوائر الداخلية والخارجية. خلال هذه العملية، يتم تحديث قيم i و j إلى الرقم التالي في النطاق.