我有一个来自Parse Class的对象数组。在我使用它之前,需要按其ID和顺序进行排序。我试着这样做......
var data = objects as [PFObject]!
data = data.sort({($0["Sequence"] as! Int) < ($1["Sequence"] as! Int)})
data = data.sort({($0["Identifier"] as! String) < ($1["Identifier"] as! String)})
......但它不起作用。它首先按顺序对其进行排序,然后按ID排序,但不保持序列顺序。有什么不对,还是有另一种方法可以用多种条件对数组进行排序。
答案 0 :(得分:1)
答案已经找到:https://stackoverflow.com/a/27040700/2799410。只需替换里面的比较值。
答案 1 :(得分:1)
这应该有效
data = data.sort({
($0["Sequence"] as! Int) < ($1["Sequence"] as! Int) ||
(
($0["Sequence"] as! Int) == ($1["Sequence"] as! Int) &&
($0["Identifier"] as! String) < ($1["Identifier"] as! String)
)
})