我有一个像下面这样的字典,
var dataSource: [String: String] = ["FirstName": "Austin",
"ListName": "Michael",
"Address": "Street Address",
"City": "Chennai"]
我想在 UITableView
中填充这些值,因此我尝试将所有 keys
从 Dictionary
获取到 Array
如下所示,
let dataArray = Array(dataSource.keys)
我得到了 [String]
的输出,
["LastName", "FirstName", "City", "Address"]
问题是,键的顺序已经改变,我希望array
的顺序与dictionary
的顺序相同。
有人能帮忙吗?
最佳答案
使用普通字典作为 tableview 数据源是个坏主意。
但是 Dictionary
无法排序。因此,以什么顺序将键值添加到字典并不重要。
如果您需要排序,请改用字典数组。
你应该使用模型而不是易于维护的普通字典:]
喜欢
struct User {
var firstName:String?
var lastName:String?
var address:String?
var city:String?
}
关于ios - 字典 [字符串 : String] keys order changed when converted to array swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51335757/