How to Swap Keys and Values in a Dictionary in Swift - Step by Step Examples



How to Swap Keys and Values in a Dictionary in Swift ?

Answer

To swap keys and values in a dictionary in Swift, you can use a `for` loop to iterate through the original dictionary and add each key-value pair to a new dictionary with the key and value swapped. This allows you to create a new dictionary where the keys and values are swapped.



✐ Examples

1 Swapping Keys and Values in a Dictionary Using a `for` Loop

We can swap keys and values in a dictionary in Swift using a `for` loop. This example demonstrates how to declare and initialize a dictionary, use a `for` loop to swap the keys and values, and print the resulting dictionary.

For example,

  1. We start by declaring and initializing a dictionary named originalDict with integer keys and string values.
  2. We declare an empty dictionary named swappedDict to store the swapped key-value pairs.
  3. We use a `for` loop to iterate through the original dictionary and add each key-value pair to the new dictionary with the key and value swapped.
  4. We print the resulting dictionary.

Swift Program

var originalDict: [Int: String] = [
    1: "One",
    2: "Two",
    3: "Three"
]

// Declare an empty dictionary to store the swapped key-value pairs
var swappedDict: [String: Int] = [:]

// Use a for loop to swap the keys and values
for (key, value) in originalDict {
    swappedDict[value] = key
}

// Print the resulting dictionary
print("Swapped dictionary:")
for (key, value) in swappedDict {
    print("Key: \(key), Value: \(value)")
}

Output

Swapped dictionary:
Key: One, Value: 1
Key: Two, Value: 2
Key: Three, Value: 3

2 Swapping Keys and Values in a Dictionary with Duplicate Values

We can swap keys and values in a dictionary with duplicate values in Swift by checking for duplicates and handling them appropriately. This example demonstrates how to declare and initialize a dictionary with duplicate values, use a `for` loop to swap the keys and values while handling duplicates, and print the resulting dictionary.

For example,

  1. We start by declaring and initializing a dictionary named originalDict with integer keys and string values, including duplicate values.
  2. We declare an empty dictionary named swappedDict to store the swapped key-value pairs, with arrays as values to handle duplicates.
  3. We use a `for` loop to iterate through the original dictionary, check for duplicate values, and add each key-value pair to the new dictionary with the key and value swapped.
  4. We print the resulting dictionary.

Swift Program

var originalDict: [Int: String] = [
    1: "One",
    2: "Two",
    3: "One"
]

// Declare an empty dictionary to store the swapped key-value pairs
var swappedDict: [String: [Int]] = [:]

// Use a for loop to swap the keys and values
for (key, value) in originalDict {
    if swappedDict[value] == nil {
        swappedDict[value] = [Int]()
    }
    swappedDict[value]?.append(key)
}

// Print the resulting dictionary
print("Swapped dictionary:")
for (key, value) in swappedDict {
    print("Key: \(key), Values: \(value)")
}

Output

Swapped dictionary:
Key: One, Values: [1, 3]
Key: Two, Values: [2]

Summary

In this tutorial, we learned How to Swap Keys and Values in a Dictionary in Swift language with well detailed examples.




More Swift Dictionaries Tutorials

  1. How to create an Empty Dictionary in Swift ?
  2. How to create a Dictionary with Initial Key-Value Pairs in Swift ?
  3. How to Print a Dictionary in Swift ?
  4. How to Add a Key-Value Pair to a Dictionary in Swift ?
  5. How to Set a Default Value for a Key in a Dictionary in Swift ?
  6. How to Update the Value for a Key in a Dictionary in Swift ?
  7. How to Check if a Dictionary is Empty in Swift ?
  8. How to Check if a Key Exists in a Dictionary in Swift ?
  9. How to Check if a Value Exists in a Dictionary in Swift ?
  10. How to Get the Value Associated with a Key in a Dictionary in Swift ?
  11. How to Remove a Key-Value Pair from a Dictionary in Swift ?
  12. How to Remove Key-Value Pairs from a Dictionary Based on Values in Swift ?
  13. How to Clear all Key-Value Pairs from a Dictionary in Swift ?
  14. How to Iterate over Keys in a Dictionary in Swift ?
  15. How to Iterate over Values in a Dictionary in Swift ?
  16. How to Iterate over Entries (Key-Value Pairs) in a Dictionary in Swift ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Dictionary in Swift ?
  18. How to Convert a Dictionary to an Array of Keys in Swift ?
  19. How to Convert a Dictionary to an Array of Values in Swift ?
  20. How to Convert a Dictionary to an Array of Key-Value Pairs in Swift ?
  21. How to Merge Two Dictionaries in Swift ?
  22. How to Clone a Dictionary in Swift ?
  23. How to Check if Two Dictionaries are Equal in Swift ?
  24. How to Sort a Dictionary by Keys in Swift ?
  25. How to Sort a Dictionary by Values in Swift ?
  26. How to Filter a Dictionary Based on Keys in Swift ?
  27. How to Filter a Dictionary Based on Values in Swift ?
  28. How to Reduce Values in a Dictionary to a Single Value in Swift ?
  29. How to Convert an Array of Key-Value Pairs to a Dictionary in Swift ?
  30. How to Convert a Dictionary to a JSON String in Swift ?
  31. How to Convert a JSON String to a Dictionary in Swift ?
  32. How to Swap Keys and Values in a Dictionary in Swift ?
  33. How to Create a Dictionary of Dictionaries in Swift ?
  34. How to Iterate Over a Dictionary of Dictionaries in Swift ?