Avatar ·

كيفية التحقق مما إذا كانت المصفوفة تحتوي على عنصر معين في Swift؟

الطريقة الأساسية: دالة contains(_:)

لقد قمت بكل شيء بشكل صحيح. دالة contains(_:) في Swift هي المكافئ المباشر لـ in_array() في PHP و includes() في JavaScript. الكود الخاص بك يعمل بشكل مثالي. إليك الشرح والطرق الإضافية:

إذا كنت تريد التحقق من وجود عنصر بناءً على شرط، استخدم contains(where:). على سبيل المثال، للتحقق مما إذا كانت المصفوفة تحتوي على أرقام أكبر من 10:

let numbers = [5, 8, 12, 3, 15]
let hasNumberGreaterThan10 = numbers.contains { $0 > 10 }
print(hasNumberGreaterThan10) // true

أو إذا كنت بحاجة للتحقق من وجود عنصر باستخدام معايير مخصصة:

let users = ["Иван", "Мария", "Анна", "Петр"]
let searchName = "Анна"

// باستخدام شرط مخصص
if users.contains(where: { $0 == searchName }) {
    print("تم العثور على المستخدم!")
}

لمصفوفات الأرقام، يمكنك أيضًا استخدام firstIndex(of:) للحصول على موقع العنصر:

let numbers = [10, 20, 30, 40]
if let index = numbers.firstIndex(of: 20) {
    print("تم العثور على الرقم في الفهرس \(index)")
}

أو للتحقق من جميع العناصر مقابل شرط ما، استخدم allSatisfy:

let numbers = [12, 15, 20]
let allGreaterThan10 = numbers.allSatisfy { $0 > 10 }
print(allGreaterThan10) // true

باختصار، طريقتك صحيحة تمامًا، وهذه الدوال الإضافية تمنحك مرونة أكثر. استمر في التعلم!