اذهب إلى المحتوى

السؤال

نشر

أحتاج للتأكد من وجود عدد من العناصر في مصفوفة بطريقة سريعة، أريد طريقة غير استخدام الدالة find التي تُرجع رقم العنصر أي أريد طريقة تُرجع لي قيمة منطقية هل العنصر موجود أم لا.

Recommended Posts

  • 0
نشر

تحتوي Swift على الدالة ()Contains والتي تُرجع قيمة منطقية Boolean true or false. في حال إيجاد العنصر في المصفوفة تُرجع قيمة true وفي حال عدم وجوده ترجع قيمة false.

للبحث عن عنصر معين في مصفوفة اكتب الشيفرة التالية:

var elements = [1,2,3,4,5]


if elements.contains(5) {
    // any matching items are in results
} else {
    // not found
}

في الإصدار السابق لـ Swift 2.0 تُكتب ()Contains  بالطريقة التالية:

var elements = [1,2,3,4,5]
if contains(elements, 5) {
    println("yes")
}

في حال كانت المصفوفة من نوع object وتريد معرفة فيما إذا كانت المصفوفة تحتوي على object معين أم لا استخدم الدالة ()ContainsObject.

مثلًا مصفوفة من نوع imageFile:

class imageFile  {
    var fileName = String()
    var fileID = Int()
}

var images : [imageFile] = []

إنشاء غرضين  2 objects وتعبئتهما في المصفوفة:

var aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 300
images.append(aImage)

aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 202
images.append(aImage)

التأكد من وجود الغرض aImage ضمن المصفوفة:

if (images as NSArray).containsObject(aImage) {
     // Do something
     print("yes");
}

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...