SWIFT 如何在不使用集合函数创建新字典的情况下对字典进行排序?
SWIFT how to sort a dictionary without creating a new one using collection functions?
我有一个家庭作业,我必须在 SWIFT 中使用集合函数对以下字典进行排序而不创建新字典。这怎么可能?
这是我的词典:
var mountains:[String:Int] = ["Mount Everest":8868, "K2":8611, "Kangchenjunga":8586, "Lhotse":8516, "Makalu":8485]
目前我正在使用以下代码,但该代码生成了一个不允许的新字典。我需要对字典本身进行排序?
let sortedDictDesc = mountains.sorted { .1 < [=12=].1 }
字典在Swift中默认无法排序。因此,如果您对它进行排序并尝试再次检索它,它将遵循最快的路径。所以我不确定为什么你需要 return 它而不创建可排序的类型。
如果你真的想对此进行排序,你有多种选择,如元组或结构,但所有这些都需要你创建一个新的 属性。不过,您始终可以将山脉设置为这些不同类型中的一种,然后重新分配它。
我有一个家庭作业,我必须在 SWIFT 中使用集合函数对以下字典进行排序而不创建新字典。这怎么可能?
这是我的词典:
var mountains:[String:Int] = ["Mount Everest":8868, "K2":8611, "Kangchenjunga":8586, "Lhotse":8516, "Makalu":8485]
目前我正在使用以下代码,但该代码生成了一个不允许的新字典。我需要对字典本身进行排序?
let sortedDictDesc = mountains.sorted { .1 < [=12=].1 }
字典在Swift中默认无法排序。因此,如果您对它进行排序并尝试再次检索它,它将遵循最快的路径。所以我不确定为什么你需要 return 它而不创建可排序的类型。
如果你真的想对此进行排序,你有多种选择,如元组或结构,但所有这些都需要你创建一个新的 属性。不过,您始终可以将山脉设置为这些不同类型中的一种,然后重新分配它。