【发布时间】:2017-08-09 14:08:20
【问题描述】:
我正在尝试在字典中附加值而不替换它,例如:
var dict = [String:Any]()
dict["login"] = ["user" : "jon"]
//...
//...
//...
dict["login"] = ["password": "1234"]
当我第二次尝试为登录添加一个值时,它会覆盖第一个值。
如何附加这些数据?
我正在使用 Swift 3。
-
编辑:让我重新表述一下我的问题。 我想建立一个动态字典,我会将它作为正文参数发布到 alamoFire。所以如果我有一个看起来像这样的 JSON:
{ "name" : "Jon", "details" : { "occupation" : "lifeguard" "years_of_ex" : 3 } "more_details" : "extra info" "inner_body" : { "someInfo" : "extra info" } ... // there might be lots of other fields since it's dynamic ... // the server expect to have missing fields and not empty ones }
我想动态添加详细信息,因为我不知道我的字典会是什么样子。 所以向字典添加值而不覆盖它们对我来说是必须的。
【问题讨论】:
-
dict["login"]?["password"] = "1234"但更重要的是......您是否有理由为此使用字典,而不是结构或类? -
是的,我需要 Alamofire 身体参数的字典。我已经编辑了我的问题,所以它会更清楚
-
只是一个建议,你可以看看SwiftyJSON,它使得在 Swift 中处理 JSON 数据变得非常简单。它使代码更具可读性,并且可选的包装是自动完成的。
标签: swift dictionary swift3