Swift如何按属性值对自定义对象数组进行排序 [英] Swift how to sort array of custom objects by property value

查看:51
本文介绍了Swift如何按属性值对自定义对象数组进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我们有一个名为 imageFile 的自定义类,该类包含两个属性.

lets say we have a custom class named imageFile and this class contains two properties.

class imageFile  {
    var fileName = String()
    var fileID = Int()
}

很多都存储在数组中

var images : Array = []

var aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 101
images.append(aImage)

aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 202
images.append(aImage)

问题是:如何按'fileID' ASC 或 DESC 对图像数组进行排序?

question is: how can i sort images array by 'fileID' ASC or DESC?

推荐答案

首先,将你的 Array 声明为类型化数组,以便在迭代时调用方法:

First, declare your Array as a typed array so that you can call methods when you iterate:

var images : [imageFile] = []

那么你可以简单地做:

斯威夫特 2

images.sorted({ $0.fileID > $1.fileID })

Swift 3+

images.sorted(by: { $0.fileID > $1.fileID })

上面的例子给出了desc排序顺序

The example above gives desc sort order

这篇关于Swift如何按属性值对自定义对象数组进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆