2016-01-04 3 views
1

В swift существует довольно много способов определения словаря. Итак, все они идентичны?Многие способы определения словаря Swift

var dic1 = Dictionary<String, Int>() 

var dic2 = [String:Int]() 

var dic3: Dictionary = Dictionary<String, Int>() 

var dic4: Dictionary = [String:Int]() 

var dic5: Dictionary<String, Int> = Dictionary<String, Int>() 

var dic6: Dictionary<String, Int> = [String: Int]() 
+2

Возможный дубликат [Swift: объявить пустой словарь] (http://stackoverflow.com/questions/24033393/swift-declare-an-empty-dictionary) (см. Http://stackoverflow.com/a/31462410/2227743) – Moritz

ответ

2

Есть еще, например:

var dic7 : [String:Int] = [:] 

, но да, они все одинаковые.

В принципе, если тип не включен в деталь справа от знака уравнения, аннотации типов в строках декларации не нужны, поскольку компилятор может вывести тип.

3

Да, все эти 6 строк действительно производят один и тот же результат:

  • пустой
  • изменяемые
  • словарь
  • где key имеет тип String
  • и value имеет тип Int
Смежные вопросы