Bay*_*ell 4 arrays sorting uitableview swift swift2
假设我有一组值(按字母顺序排列),例如[A, B, B, B, D, G, G, H, M, M, M, M, Z]
表示用户的姓氏.我期待创建表的索引,那么什么是分离这样一个数组(任意数量的与字母表中的所有字母开头的姓氏的用户)到阵列,如最好的方式[A] [B, B, B] [D] [G, G] [H] [M, M, M, M] [Z]
,这似乎是最好的办法为具有多个部分的表创建值,其中用户以姓氏分隔.谢谢你的帮助!
jtb*_*des 11
您可以使用name.characters.first
获取名称的初始值,并通过比较它们来构建数组数组:
let names = ["Aaron", "Alice", "Bob", "Charlie", "Chelsea", "David"]
var result: [[String]] = []
var prevInitial: Character? = nil
for name in names {
let initial = name.characters.first
if initial != prevInitial { // We're starting a new letter
result.append([])
prevInitial = initial
}
result[result.endIndex - 1].append(name)
}
print(result) // [["Aaron", "Alice"], ["Bob"], ["Charlie", "Chelsea"], ["David"]]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3905 次 |
最近记录: |