Swift Academy · درس

ربط القيم وعبارات where

اربط القيم المطابقة وأضف شروطًا إضافية.

الدرس 3 من 413 خطوة

ربط القيم وعبارات where درس مجاني في Swift Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Swift Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Swift Academy 4 دروس في المجموع.

الربط داخل الحالة

يمكن لحالة switch ربط القيمة المطابقة بثابت باستخدام case let x، مما يجعل القيمة متاحة داخل تلك الحالة.

let value = 42
switch value {
case let n:
    print("The number is \(n)")
}

ربط جزء من tuple

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

let point = (3, 7)
switch point {
case (let x, 0):
    print("On x-axis at \(x)")
case (0, let y):
    print("On y-axis at \(y)")
case let (x, y):
    print("At \(x), \(y)")
}

عبارة where

أضف عبارة where إلى الحالة لتطبيق شرط منطقي إضافي على القيمة المرتبطة. ولا تطابق الحالة إلا إذا تحقق النمط والشرط معًا.

let number = 8
switch number {
case let n where n % 2 == 0:
    print("\(n) is even")
case let n:
    print("\(n) is odd")
}

where مع النطاقات

يمكنك دمج نمط نطاق مع عبارة where لتحكم أدق.

let score = 95
switch score {
case 90...100 where score == 100:
    print("Perfect")
case 90...100:
    print("Excellent")
default:
    print("Keep trying")
}

where مع tuple

يمكن لعبارة where مقارنة عناصر tuple المرتبطة بعضها ببعض.

let point = (4, 4)
switch point {
case let (x, y) where x == y:
    print("On the diagonal")
case let (x, y):
    print("Off diagonal at \(x), \(y)")
}

شروط where متعددة

يمكن أن يكون الشرط بعد where أي تعبير منطقي، بما في ذلك && و||.

let n = 15
switch n {
case let x where x > 10 && x < 20:
    print("In the teens-ish range")
default:
    print("Outside range")
}

الترتيب مع where

لا تطابق الحالة التي تحتوي على عبارة where إلا عندما يكون الشرط صحيحًا؛ وإلا تنتقل Swift إلى الحالة التالية.

let temp = 5
switch temp {
case let t where t < 0:
    print("Freezing")
case let t where t < 10:
    print("Cold")
default:
    print("Mild or warm")
}

الربط في حالات النطاق

يمكنك ربط قيمة مع الاستمرار في تقييدها بنطاق باستخدام where.

let age = 67
switch age {
case let a where a >= 65:
    print("Senior, age \(a)")
case let a where a >= 18:
    print("Adult, age \(a)")
default:
    print("Minor")
}

التصنيف مع الربط

يتيح دمج الربط مع where لـ switch واحد تصنيف القيمة والإبلاغ عنها في الوقت نفسه.

let balance = -50
switch balance {
case let b where b < 0:
    print("Overdrawn by \(-b)")
case 0:
    print("Empty")
case let b:
    print("Balance: \(b)")
}

لماذا تفيد عمليات الربط

من دون الربط، ستحتاج إلى الرجوع إلى المتغير الأصلي مرة أخرى. أما الربط فيوفر اسمًا محليًا واضحًا، ويتوافق طبيعيًا مع عوامل الترشيح where.

let input = 21
switch input {
case let n where n.isMultiple(of: 3):
    print("\(n) is divisible by 3")
default:
    print("Not divisible by 3")
}

ربط شامل

تعمل عبارة case let x النهائية من دون شرط مثل default، مع استمرارها في توفير القيمة لك.

let code = 17
switch code {
case 0:
    print("zero")
case let other:
    print("non-zero: \(other)")
}

تحقق سريع

اختبر ربط القيم وwhere.

خلاصة: ربط القيم وعبارات where

استخدم case let x لربط القيمة المطابقة، وأضف where لتطبيق شرط إضافي. ويتيحان معًا لـ switch واحد تصنيف القيم واستخدامها في الحالة نفسها.

let n = 6
switch n {
case let x where x > 0: print("positive \(x)")
default: print("non-positive")
}
البدء مجانًا

تعلم Swift مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
122
الدروس
409

الأسئلة الشائعة

هل درس «ربط القيم وعبارات where» مجاني؟

نعم — نص درس «ربط القيم وعبارات where» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Swift Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Swift Academy 4 دروس في المجموع.

ماذا ستتعلم في «ربط القيم وعبارات where»؟

اربط القيم المطابقة وأضف شروطًا إضافية. تتمرن على Swift Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Swift Academy؟

لا تُشترط خبرة سابقة. Swift Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.

كم من الوقت يستغرق درس «ربط القيم وعبارات where»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Swift Academy هذا؟

نعم. كل درس في Swift Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ‏Switch شامل للقيم
  2. مطابقة النطاقات والأزواج
  3. ربط القيم وعبارات where
  4. الحالات المركبة و Fallthrough
← العودة إلى Swift Academy