簡體   English   中英

Swift 2.1字典擴展

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM