目前,在Swift 3中,有两种方法可以编写字典类型。这些是[String: Any]
和Array<String>
。我知道前者与Objective-C键/值编码兼容,后者不是,但除此之外,它们之间是否有任何重大差异或我应该注意的任何性能影响?
我目前正在倾向于使用前者的Obj-C键/ val兼容性,但如果这是一个滑坡,请告诉我。
我想同样可以对[String]
和# Outbound Email Configuration
#-------------
mail.host=smtp.gmail.com
mail.port=465
mail.encoding=UTF-8
mail.username=****@gmail.com
mail.password=*******
mail.protocol=smtps
mail.from.default=****@gmail.com
mail.smtps.starttls.enable=true
mail.smtps.auth=true
说同样的话吗?
答案 0 :(得分:5)
Dictionary<String, Any>
和[String: Any]
,Array<String>
和[String]
相同。没有任何区别。
答案 1 :(得分:2)
Dictionary和[String:Any]是同一个东西的不同语法。如果您想要键值编码,可以使用NSDictionary或NSArray。
var swiftarray: Array = []
// Fill the array with objects
var array: NSArray = (swiftarray as NSArray).valueForKeyPath("key.path") as NSArray