你可以做如下。
1)獲取從核心數據的所有記錄。 (假設你已經得到aryFullname
)
2)使用for循環,你可以得到數組只有姓氏如下。
//Define new mutable array aryfinalData
for i in 0..<aryFullname.count
{
var fullName = aryFullname.ObjectAtindex(i)
var fullNameArr = split(fullName) {$0 == " "}
var lastName: String? = fullNameArr.count > 1 ? fullNameArr[1] : nil
aryfinalData.addObject(lastName)
}
3)對數組排序如下。
// convert NSMutableArray to the Array by using below line of code.
let arySort = aryfinalData as AnyObject as! [String]
var sortedArray = arySort.sort { $0.name < $1.name }
// sortedArray is your Final array
注:這不是一個有效的解決方案,但你沒有任何解決方案,我不知道上面的語法,這樣照顧了相同且能做的變化,如果任何要求。
有了一個SQLite後端,這是不可能的,而不只是獲取的所有記錄到一個數組,你自己對它們進行排序。你要麼必須這樣做,要麼改變你的數據模型(除非你不使用sqlite作爲後端,在這種情況下你可以使用計算屬性,但你可能使用sqlite作爲後端)。 –
@RobNapier你能給一個代碼示例嗎?我目前正在嘗試'.sort(by:lastNameASC)',我正在嘗試編寫,但一些幫助將不勝感激。 – think123
它總是更好地添加好友實體中的姓氏列。所以,你不必寫很多代碼。 –