字典[String:String]转换为数组swift时,键顺序已更改

时间:2018-07-14 06:05:14

标签: ios arrays swift dictionary

我有如下字典,

var dataSource: [String: String] = ["FirstName": "Austin",
                                    "ListName": "Michael",
                                    "Address": "Street Address",
                                    "City": "Chennai"]

我想在UITableView中填充这些值,所以我试图将所有keysDictionaryArray,如下所示,

let dataArray = Array(dataSource.keys)

我得到的输出为[String]

["LastName", "FirstName", "City", "Address"]

问题是,键的顺序已更改,我希望array的顺序与dictionary相同。

任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:4)

使用纯字典作为tableview数据源是个坏主意。

但是Dictionary无法排序。因此,将键值添加到字典的顺序无关紧要。

如果需要排序,请改用字典数组。

您应该使用模型而不是易于维护的普通字典:]

喜欢

struct User {

    var firstName:String?
    var lastName:String?
    var address:String?
    var city:String?
}