【问题标题】:Swift Array Sort [duplicate]Swift 数组排序 [重复]
【发布时间】:2015-10-09 17:59:10
【问题描述】:

我有一个 Parse 类的对象数组。在我使用它之前,它需要先按 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 排序,但不保持序列顺序。是有什么问题,还是有另一种方法可以对具有多个条件的数组进行排序。

【问题讨论】:

    标签: arrays swift sorting


    【解决方案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)
      )
    })
    

    【讨论】:

      【解决方案2】:

      答案已经找到:https://stackoverflow.com/a/27040700/2799410。只需替换里面的比较值即可。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-27
        • 2019-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多