假设我们有一个名为ImageFile
的自定义类,该类包含两个属性:
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”升序或降序对图像数组进行排序?
雨燕3
people = people.sorted(by: { $0.email > $1.email })
[为Swift 3更新了排序方式(按:)]利用尾随闭包:
images.sorted { $0.fileID < $1.fileID }
您使用的位置
images.sort { $0.fileID < $1.fileID }
如果您要重复执行此操作并更喜欢定义函数,一种方法是:
func sorterForFileIDASC(this:imageFile, that:imageFile) -> Bool {
return this.fileID < that.fileID
}
然后用作:
images.sort(by: sorterForFileIDASC)
首先,将您的Array声明为类型化数组,以便您可以在迭代时调用方法:
var images : [imageFile] = []
然后你可以简单地做:
Swift 2
images.sorted({ $0.fileID > $1.fileID })
Swift 3
images.sorted(by: { $0.fileID > $1.fileID })
上面的示例按降序给出了结果。
问题内容: 可以说我们有一个名为imageFile的自定义类,该类包含两个属性。 其中很多存储在数组中 问题是:如何按“ fileID” ASC或DESC对图像数组进行排序? 问题答案: 首先,将Array声明为类型化数组,以便在迭代时可以调用方法: 然后,您可以简单地执行以下操作: 迅捷2 迅捷3+ 上面的示例给出了 desc 排序顺序
我试过了,但不起作用,二进制运算符'>'不能应用于两个'double?‘操作数 做这件事最方便快捷的方法是什么?
问题内容: 在Swift 2.0中,您将如何按属性对自定义对象数组进行排序?我知道在Swift 1.2中,这是使用sorted()和sort()完成的。但是,这些方法在Xcode 7 beta 4中不再起作用。谢谢! 例如: 问题答案: 在Swift 2中: 您可以使用方法,使用来比较两个日期: 或者,如果您想对原始数组进行排序,则可以: 在Swift 3中 返回数组的排序形式,请使用,而不是 排
问题内容: 我已经使用AJAX获得了以下对象并将它们存储在数组中: 如何仅使用JavaScript 创建一个函数以按属性 升序 或 降序 对对象进行排序? 问题答案: 按价格升序对房屋进行排序: 或在ES6版本之后:
现在如何按照MyClass对象的名称对数组进行排序。
问题内容: 我有一个对象数组,这些对象的属性称为“ CODE”。 如何通过自定义顺序对数组进行排序,例如: 尝试各种方法均未成功。请帮忙。 问题答案: 您可以将函数与函数一起使用。