所以我似乎无法使用内置排序功能的swifts进行排序。
我有一个PFObjects数组,如果你不知道这个问题的范围是什么,最好把它想象成一个hashTables数组。
我正在尝试使用此
对数组进行排序self.courseArray = self.courseArray.sorted(by: sortClasses)
和sortClasses看起来像:
func sortClasses(_ x: Any, _ y:Any) ->Bool{
return ((x as! PFObject).object(forKey: "priority") as! Int) < ((y as! PFObject).object(forKey:"priority") as! Int)
}
关键优先级将给出Int。
但是,当我这样做时,我收到此错误
Cannot assign value of type '[NSFastEnumerationIterator.Element]' to type 'NSMutableArray'
有什么建议吗?
答案 0 :(得分:0)
只使用原生Swift Array
而不是NSMutableArray
。
将courseArray
声明为
[PFObject]()
并使用密钥订阅
func sortClasses(_ x: Any, _ y:Any) -> Bool {
return (x as! PFObject)["priority"] as! Int < (y as! PFObject)["priority"] as! Int
}
您可以将与NSMutableArray
相关的其他API更改为本地对应的。