Mah*_*aha 0 arrays xcode dictionary ios swift
我有一个部门名称数组
var departments: Array<String>!
Run Code Online (Sandbox Code Playgroud)
我想在字典中按字母顺序对这个数组进行排序,例如字典应该是这样的
var MyDictionary = ["A": ["Affenpoo", "Affenpug", "Affenshire", "Affenwich", "Afghan Collie", "Afghan Hound"], "B": ["Bagle Hound", "Boxer"],
"C": ["Cagle Cound", "Coxer"]]
Run Code Online (Sandbox Code Playgroud)
departments数组不是静态的
我怎么能在swift中生成这个字典?
非常感谢
我的方法是迭代数组并获取每个条目的第一个字母.从字典中检索该字母的数组.如果是nil则创建一个新数组.将单词添加到您检索的数组中,然后将该数组存储在字典中.
let departments = ["Affenpoo", "Affenpug", "Affenshire", "Affenwich", "Afghan Collie","Cagle Cound", "Coxer"]
var outputDict=[String:[String]]()
for word in departments {
let initialLetter=word.substringToIndex(word.startIndex.advancedBy(1)).uppercaseString
var letterArray=outputDict[initialLetter] ?? [String]()
letterArray.append(word)
outputDict[initialLetter]=letterArray
}
print(outputDict)
Run Code Online (Sandbox Code Playgroud)
["C":["Cagle Cound","Coxer"],"A":["Affenpoo","Affenpug","Affenshire","Affenwich","Afghan Collie"]]