[英]NSDictionary vs [String:AnyObject] in Swift
我更新了一個外部Swift庫,其中一種方法已更改了以下內容:
public convenience method(data:NSDictionary?) { ... }
至:
public convenience method(data:[String: AnyObject]?) { ... }
這是什么意思?
最初,使用舊的@{@"optionA":@YES}
作為data
參數傳遞。 但是現在有了新產品,我需要通過兩項。 我當時想只寫@{@"optionA":@YES,@"optionB":@NO}
,對嗎?
這僅表示該參數現在是快速字典,並且不再是Objective-C NSDictionary。
要傳遞數據,只需使用方括號代替大括號並刪除“ @”(快速)
["optionA":true, "optionB": false]
如果您是從Objective-C調用方法,則該方法參數應顯示為NSDictionary,並且您使用@{@"optionA":@YES,"optionB":@NO}
但是在optionB
之前錯過了@ optionB
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.