Swift數(shù)組可以使用系統(tǒng)自帶的方法進(jìn)行排序阅畴,篩選倡怎,極大的提高了開(kāi)發(fā)的效率
假設(shè)有一個(gè)數(shù)組,dataModels
var dataModels = [dataModel]()
數(shù)組中有數(shù)據(jù)模型贱枣,dataModel
數(shù)據(jù)模型dataModel有字段 rate24监署,(rate24可以為int, double, string等可以比較的類(lèi)型)
class dataModel: NSObject {
@objc var rate24 : Double = 0
}
//數(shù)組排序
// 按照rate從大到小降序排列
//將排序的結(jié)果存入increases數(shù)組中
let increases = dataModels.sorted(by: { (a, b) -> Bool in
return a.rate24 > b.rate24
})
// 按照rate從小到大升序排列
//將排序的結(jié)果存入decreases數(shù)組中
let decreases = dataModels.sorted(by: { (a, b) -> Bool in
return a.rate24 < b.rate24
})
//數(shù)組篩選
//篩選出increases中,rate24大于0的元素
//將排序的結(jié)果存入newIncreaseMs數(shù)組中
let newIncreaseMs = increases.filter({ (a) -> Bool in
return a.rate24 > 0.0
})
//篩選出decreases中纽哥,rate24小于0的元素
//將排序的結(jié)果存入newDecreaseMs數(shù)組中
let newDecreaseMs = decreases.filter({ (a) -> Bool in
return a.rate24 < 0.0
})