Iterating through a dictionary in Swift



We can iterate through a dictionary using various methods in swift. You can iterate a dictionary for keys and values also.

We will use the different approaches to iterate a dictionary like below ?

  • Using a for-in loop

  • Iterating all the keys in a dictionary

  • Iterating all the values in a dictionary

  • Iterating all the elements using the enumerated() method

Using a for-in loop

Most of the time we use the for-in loop to iterate through a dictionary. Using a for-in loop, you can iterate all the elements of a dictionary like the below ?

Syntax

for (key, value) in dictionary { } 

In the syntax, where key and value is the names of the variables that will hold the current key and value, respectively.

Example

import Foundation let colorsDictionary = [ "aliceblue": "#f0f8ff", "antiquewhite": "#faebd7", "aqua": "#00ffff", "aquamarine": "#7fffd4", "azure": "#f0ffff", "beige": "#f5f5dc", "bisque": "#ffe4c4", "black": "#000000", "blanchedalmond": "#ffebcd", "blue": "#0000ff", "blueviolet": "#8a2be2", "brown": "#a52a2a" ] for (colorName, colorValue) in colorsDictionary { print("Name: \(colorName) and its hex code: \(colorValue)") } 

Output

Name: brown and its hex code: #a52a2a Name: bisque and its hex code: #ffe4c4 Name: blueviolet and its hex code: #8a2be2 Name: aqua and its hex code: #00ffff Name: aliceblue and its hex code: #f0f8ff Name: aquamarine and its hex code: #7fffd4 Name: azure and its hex code: #f0ffff Name: beige and its hex code: #f5f5dc Name: blanchedalmond and its hex code: #ffebcd Name: blue and its hex code: #0000ff Name: antiquewhite and its hex code: #faebd7 Name: black and its hex code: #000000 

In the above example, we created a dictionary to define some colors with names and hex values. Using a for-in loop, iterating all the elements one by one in an unspecified order. It gives the element in the pair (key, value) format.

Iterating through all the keys

If you want to access or iterate all the keys at once, you can do that using the "keys" property. This property returns an array of strings type which gives you all the keys of a dictionary.

Example

import Foundation let colorsDictionary = ["aliceblue": "#f0f8ff", "antiquewhite": "#faebd7", "aqua": "#00ffff", "aquamarine": "#7fffd4", "azure": "#f0ffff", "beige": "#f5f5dc", "bisque": "#ffe4c4", "black": "#000000", "blanchedalmond": "#ffebcd", "blue": "#0000ff", "blueviolet": "#8a2be2", "brown": "#a52a2a" ] for key in colorsDictionary.keys { print("Key: \(key)") } 

Output

Key: brown Key: antiquewhite Key: bisque Key: beige Key: black Key: aqua Key: azure Key: aliceblue Key: blue Key: blueviolet Key: aquamarine Key: blanchedalmond 

In the above example, we created a dictionary to define some colors with names and hex values. Using a for-in loop, iterating all the keys of a dictionary.

Iterating through all the values

If you want to access or iterate all the values at once, you can do that using the "values" property. This property returns an array of strings type which gives you all the values of a dictionary.

Example

import Foundation let colorsDictionary = ["aliceblue": "#f0f8ff", "antiquewhite": "#faebd7", "aqua": "#00ffff", "aquamarine": "#7fffd4", "azure": "#f0ffff", "beige": "#f5f5dc", "bisque": "#ffe4c4", "black": "#000000", "blanchedalmond": "#ffebcd", "blue": "#0000ff", "blueviolet": "#8a2be2", "brown": "#a52a2a" ] for value in colorsDictionary.values { print("Value: \(value)") } 

Output

Value: #00ffff Value: #f0f8ff Value: #f5f5dc Value: #000000 Value: #f0ffff Value: #ffebcd Value: #7fffd4 Value: #ffe4c4 Value: #0000ff Value: #faebd7 Value: #a52a2a Value: #8a2be2 

Conclusion

We can iterate the elements, keys, and values of a dictionary in Swift. The dictionary provides the "keys" property to access an array of all the keys. In the same way, a property called "values" gives you an array of all the values.

You can iterate through a dictionary using a for-in loop and other approaches. But remember that, the order of elements is unspecified. But still using the enumerated() function, you can keep track of an index of elements while accessing it.

Updated on: 2023-02-28T13:02:45+05:30

4K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements