Swift程序:按键排序字典


Swift支持`sorted()`方法来排序给定字典中的所有元素。此方法根据键对字典的键值对进行排序。

语法

func sorted(by:)

这里,`by`参数的值为:

  • 大于(>) − 将元素排序为降序。

  • 小于(<) − 将元素排序为升序。

  • 闭包 − 根据给定的闭包对元素进行排序。

算法

  • 步骤1 − 创建一个包含键值对的字典。

  • 步骤2 − 显示原始字典。

  • 步骤3 − 现在使用`sorted()`函数根据键对键值对进行排序。

  • 步骤4 − 显示最终输出。

示例

在下面的Swift程序中,我们将按键对字典进行排序。首先创建一个字典。然后将此闭包(`{ $0.key < $1.key }`)传递到`sorted(by:)`函数中,以根据键对字典的元素进行排序,并显示最终结果。这里`$0`和`$1`分别表示传递到闭包中的第一个和第二个参数。

import Foundation
import Glibc

let myDict = ["name": "Mona", "company": "XMK.pvt", "city": "Mumbai"]

print("Original dictionary:", myDict)

let Sdict = myDict.sorted(by: { $0.key < $1.key })

print("Sorted dictionary:", Sdict)

输出

Original dictionary: ["city": "Mumbai", "name": "Mona", "company": "XMK.pvt"]
Sorted dictionary: [(key: "city", value: "Mumbai"), (key: "company", value: "XMK.pvt"), (key: "name", value: "Mona")]

结论

这就是我们如何按键排序字典的方法。`sorted()`方法返回准确的结果。此外,它不会修改原始字典,而是创建一个包含结果的新字典。`sorted(by:)`方法的复杂度为O(n log n),其中n是字典的长度。

更新于:2023年5月10日

961 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.