主要用途:model的排序,string的排序,各種的排序,很靈活的排序器
主要使用的API:
1.init(key:ascending:selector:)
2.init(key:ascending:)
直接說第一個(gè)API吧,三個(gè)參數(shù),
第一個(gè)key是拿來比較的值對應(yīng)的key,如果在數(shù)組中使用會(huì)直接取每一項(xiàng)的key的值,如果取自身填self,
第二個(gè)參數(shù)是否升序不說了,
第三個(gè)參數(shù)是比較方法,可以用系統(tǒng)API,如果是NSNumber或者NSString這類可以直接用compare(_:),如果是自己寫的方法需要一個(gè)返回ComparisonResult的方法
talk is cheap, show you the code:

簡單的demo

結(jié)果
很靈活,嗯。
第二個(gè)API
init(key:ascending:)其實(shí)就是第一個(gè)API里默認(rèn)給了個(gè)#selector(compare(_:)),如果你懶得用第一個(gè)API懶得再定義一個(gè)compare方法的話可以直接都用第二個(gè)就好了,自定義的model寫個(gè)compare(_:)就行了
