How to Sort a Dictionary by Values in Swift - Step by Step Examples
How to Sort a Dictionary by Values in Swift ?
Answer
To sort a dictionary by values in Swift, you can use the `sorted(by:)` method and a dictionary comprehension. This allows you to create a new dictionary with the key-value pairs sorted by value.
✐ Examples
1 Sorting a Dictionary by Values Using `sorted(by:)`
We can sort a dictionary by values in Swift using the `sorted(by:)` method. This example demonstrates how to declare and initialize a dictionary, use the `sorted(by:)` method to sort the dictionary by values, and print the sorted dictionary.
For example,
- We start by declaring and initializing a dictionary named
myDictionary
with integer keys and string values. - We use the `sorted(by:)` method to get the items in sorted order by value.
- We use a dictionary comprehension to create a new dictionary with the sorted items.
- We print the sorted dictionary.
Swift Program
var myDictionary: [Int: String] = [
1: "One",
2: "Two",
3: "Three"
]
// Sort the dictionary by values using sorted(by:)
let sortedDict = Dictionary(uniqueKeysWithValues: myDictionary.sorted(by: { $0.value < $1.value }))
// Print the sorted dictionary
print("Sorted dictionary:")
for (key, value) in sortedDict {
print("Key: \(key), Value: \(value)")
}
Output
Sorted dictionary: Key: 1, Value: One Key: 3, Value: Three Key: 2, Value: Two
2 Sorting a Dictionary by Values in Descending Order
We can sort a dictionary by values in descending order in Swift using the `sorted(by:)` method. This example demonstrates how to declare and initialize a dictionary, use the `sorted(by:)` method to sort the dictionary by values in descending order, and print the sorted dictionary.
For example,
- We start by declaring and initializing a dictionary named
myDictionary
with integer keys and string values. - We use the `sorted(by:)` method to get the items in sorted order by value in descending order.
- We use a dictionary comprehension to create a new dictionary with the sorted items in descending order.
- We print the sorted dictionary.
Swift Program
var myDictionary: [Int: String] = [
1: "One",
2: "Two",
3: "Three"
]
// Sort the dictionary by values in descending order using sorted(by:)
let sortedDict = Dictionary(uniqueKeysWithValues: myDictionary.sorted(by: { $0.value > $1.value }))
// Print the sorted dictionary
print("Sorted dictionary:")
for (key, value) in sortedDict {
print("Key: \(key), Value: \(value)")
}
Output
Sorted dictionary: Key: 2, Value: Two Key: 3, Value: Three Key: 1, Value: One
Summary
In this tutorial, we learned How to Sort a Dictionary by Values in Swift language with well detailed examples.
More Swift Dictionaries Tutorials
- How to create an Empty Dictionary in Swift ?
- How to create a Dictionary with Initial Key-Value Pairs in Swift ?
- How to Print a Dictionary in Swift ?
- How to Add a Key-Value Pair to a Dictionary in Swift ?
- How to Set a Default Value for a Key in a Dictionary in Swift ?
- How to Update the Value for a Key in a Dictionary in Swift ?
- How to Check if a Dictionary is Empty in Swift ?
- How to Check if a Key Exists in a Dictionary in Swift ?
- How to Check if a Value Exists in a Dictionary in Swift ?
- How to Get the Value Associated with a Key in a Dictionary in Swift ?
- How to Remove a Key-Value Pair from a Dictionary in Swift ?
- How to Remove Key-Value Pairs from a Dictionary Based on Values in Swift ?
- How to Clear all Key-Value Pairs from a Dictionary in Swift ?
- How to Iterate over Keys in a Dictionary in Swift ?
- How to Iterate over Values in a Dictionary in Swift ?
- How to Iterate over Entries (Key-Value Pairs) in a Dictionary in Swift ?
- How to Get the Size (Number of Key-Value Pairs) of a Dictionary in Swift ?
- How to Convert a Dictionary to an Array of Keys in Swift ?
- How to Convert a Dictionary to an Array of Values in Swift ?
- How to Convert a Dictionary to an Array of Key-Value Pairs in Swift ?
- How to Merge Two Dictionaries in Swift ?
- How to Clone a Dictionary in Swift ?
- How to Check if Two Dictionaries are Equal in Swift ?
- How to Sort a Dictionary by Keys in Swift ?
- How to Sort a Dictionary by Values in Swift ?
- How to Filter a Dictionary Based on Keys in Swift ?
- How to Filter a Dictionary Based on Values in Swift ?
- How to Reduce Values in a Dictionary to a Single Value in Swift ?
- How to Convert an Array of Key-Value Pairs to a Dictionary in Swift ?
- How to Convert a Dictionary to a JSON String in Swift ?
- How to Convert a JSON String to a Dictionary in Swift ?
- How to Swap Keys and Values in a Dictionary in Swift ?
- How to Create a Dictionary of Dictionaries in Swift ?
- How to Iterate Over a Dictionary of Dictionaries in Swift ?