[英]Swift 2.1 Dictionary extension
我希望編寫一個Swift字典擴展名,該擴展名將附加可靠地相同的數據,這些數據最終將作為URL參數傳遞到Web請求中。 我嘗試了各種技巧,但似乎都沒有效果。
我得到的最接近的是:
extension Dictionary where Key: StringLiteralConvertible, Value: AnyObject {
mutating func auth() -> Dictionary {
self.updateValue("2.0", forKey: "api")
return self
}
}
但這仍然引發錯誤:
無法使用類型為((String,forKey:String)'的參數列表調用'updateValue'
在顯示為“ self.updateValue(...)”的行上
有什么建議嗎? 提前致謝!
您只需要將字符串強制轉換為! 價值還是一樣! 鍵。 另外,您已將方法聲明為變異的,因此您無需返回任何內容。
extension Dictionary {
mutating func auth() {
updateValue("2.0" as! Value, forKey: "api" as! Key)
}
}
var dic: [String:AnyObject] = [:]
print(dic) // "[:]\n"
dic.auth()
print(dic) // "["api": 2.0]\n"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.