按条件

时间:2016-04-20 18:20:46

标签: swift sorting nsmutablearray

我想按日期顺序对NSMutableArray进行排序:

var currentReminders: NSMutableArray

此数组存储如下提醒对象:

class Reminders: NSObject {

    var title: String?
    var dueDate = NSDate()

    init(...) {...}
}

我想按日期的升序排序currentReminder(最近dueDate的那个将在上面排序)

有人可以告诉我该怎么做吗?

1 个答案:

答案 0 :(得分:0)

创建NSSortDescriptor对象并使用它对数组进行排序:

var dateDescriptor = NSSortDescriptor(key: "dueDate", ascending: true)
var sortedArray = currentReminders.sortedArrayUsingDescriptors([dateDescriptor])

新的sortedArray将包含按dueDate排序的对象。

另外,我建议使用Array<T>之类的原生Swift对象而不使用NSObject子类。这将使排序和数据处理变得更加容易。