数组 – 在swift中的两个参数上排序数组

前端之家收集整理的这篇文章主要介绍了数组 – 在swift中的两个参数上排序数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想对一个数组对两个参数进行排序,例如,名称,然后通过描述.
首先按名称排序数组,然后按描述排序数组将不起作用,因为数组不会按名称排序.

解决方案应该是这样的:

  1. var sortedArray = sorted(items,{ (o1: MyObject,o2: MyObject) -> Bool in
  2. return o1.name < o2.name and o1.description < o2.description
  3. })

谢谢

@H_404_8@
@H_404_8@
你的语法看起来正确只需更改关闭
  1. return o1.name == o2.name ? (o1.description < o2.description) : (o1.name < o2.name)

如果你想要两个以上的排序标准,我建议使用旧的排序描述符.

  1. let sortedArray = (unsortedArray as NSArray).sortedArrayUsingDescriptors([
  2. NSSortDescriptor(key: "name",ascending: true),NSSortDescriptor(key: "description",....
  3. ]) as! [Object]
@H_404_8@

猜你在找的Swift相关文章