2017-01-23 1 views
3

Derzeit gibt es in Swift 3 2 Möglichkeiten, Dictionary-Typen zu schreiben. Diese sind Dictionary<String, Any> und [String: Any]. Ich weiß, dass ersteres mit Objective-C-Schlüssel/Wert-Kodierung kompatibel ist und das letztere nicht, aber abgesehen davon, gibt es irgendwelche großen Unterschiede zwischen ihnen oder irgendwelche Auswirkungen auf die Leistung, die mir bewusst sein sollten?Wörterbuch <String, Any> vs. [String: Beliebige]

Ich wechsle derzeit in Richtung der Verwendung der ehemaligen für seine Obj-C-Schlüssel/Val-Kompatibilität, aber bitte warnen Sie mich, wenn dies ein rutschiger Hang ist.

Ich nehme an, das gleiche könnte für Array<String> und [String] auch gesagt werden?

+1

Das ist kein Unterschied überhaupt zwischen 'Wörterbuch ' und '[String: Alles]' oder zwischen 'Array ' und '[Zeichenfolge]'. –

+0

http://stackoverflow.com/questions/29354511/syntax-to-create-dictionary-in-swift, http://stackoverflow.com/questions/34240602/difference-between-string-and-arraystring. –

Antwort

5

Dictionary<String, Any> und [String: Any], Array<String> und [String] sind gleich. Es gibt keinen Unterschied.

2

Dictionary und [String: Any] sind unterschiedliche Syntax für die gleiche Sache. Wenn Sie eine Schlüsselwertcodierung wünschen, können Sie NSDictionary oder NSArray verwenden.

var swiftarray: Array = [] 
// Fill the array with objects 
var array: NSArray = (swiftarray as NSArray).valueForKeyPath("key.path") as NSArray 
Verwandte Themen