Swift数组排序

时间:2015-10-09 08:40:36

标签: arrays swift sorting

我有一个来自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排序,但不保持序列顺序。有什么不对,还是有另一种方法可以用多种条件对数组进行排序。

2 个答案:

答案 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)
  )
})