• 0

كيف أُرتّب مصفوفة من نوع object معين في لغة Apple Swift؟

قمت بإنشاء صف يحوي على متغير id ومجموعة متغيرات أخرى وأريد ترتيب المصفوفة التي تحتوي على الأغراض objects بحسب قيمة الـ id الموجودة في الـ object كيف يمكن عمل ذلك؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يمكن ترتيب مصفوفة من نوع object في Swift اعتمادًا على خاصية معينة بطريقيتن إما باستخدام الدالة ()sort أو الدالة ()sortIntPlace:

ليكن مثلًا الصف ImageFile:

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

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

var images : [imageFile] = []

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)

لترتيب المصفوفة على حسب قيمة id باستخدام الدالة ()sort اكتب الشيفرة التالية:

images.sort({ $0.fileID > $1.fileID })

لإسناد المصفوفة بعد ترتيبها لمصفوفة جديدة اكتب الشيفرة التالية:

let sortedArray = images.sort { $0.fileID.compare($1.fileID) == .OrderedAscending }  // use `sorted` in Swift 1.

لترتيب المصفوفة باستخدام الدالة ()sortIntPlace اكتب:

images.sortInPlace { $0.fileID.compare($1.fileID) == .OrderedAscending }

طباعة المصفوفة بعد ترتيبها:

for imageFile in images {
  print(imageFile.fileID)
}

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن