This tutorial belongs to the Swift series
We use dictionaries to create a collection of key-value pairs.
Here is how to create a dictionary with 1 key-value pairs, where the key is a String and the value is an Int:
var dict = ["Roger": 8, "Syd": 7]
In this case the type is inferred. You can also explicitly set the type at declaration time:
var dict: [String: Int] = ["Roger": 8, "Syd": 7]
In this example we create an empty dictionary of Int keys and String values:
var dict = [String: Int]() //or var dict: [String: Int] = [:]
You can access the value assigned to a key using this syntax:
var dict = ["Roger": 8, "Syd": 7] dict["Roger"] //8 dict["Syd"] //7
You can change the value assigned to a key in this way:
dict["Roger"] = 9
A dictionary must be declared as
varto be modified. If it’s declared with
let, you cannot modify it by adding or removing elements.
Use the same syntax to add a new key/value pair:
dict["Tina"] = 4
To remove a key/value paid, assign the value to
dict["Tina"] = nil
Or call the
To get the number of items in the dictionary, use the
var dict = ["Roger": 8, "Syd": 7] dict.count //2
If a dictionary is empty, its
isEmpty property is
var dict = [String: Int]() dict.isEmpty //true
There are a lot of methods related to dictionaries, but those are the basic ones.
Dictionaries are passed by value, which means if you pass it to a function, or return it from a function, the dictionary is copied.
Dictionaries are collections, and they can be iterated over in loops.
Download my free Swift Handbook!