【问题标题】:SWIFT how to sort a dictionary without creating a new one using collection functions?SWIFT 如何在不使用集合函数创建新字典的情况下对字典进行排序?
【发布时间】:2021-08-17 23:09:30
【问题描述】:

我有一个作业,我必须使用集合函数对以下字典进行排序,而无需在 SWIFT 中创建新字典。这怎么可能?

这是我的字典:

var mountains:[String:Int] = ["Mount Everest":8868,  "K2":8611,  "Kangchenjunga":8586,  "Lhotse":8516,  "Makalu":8485]

目前我正在使用以下代码,但该代码会生成一个不允许的新字典。我需要对字典本身进行排序吗?

    let sortedDictDesc = mountains.sorted { $1.1 < $0.1 }

【问题讨论】:

  • 字典无序
  • 可能你误解了作业。

标签: swift sorting dictionary collections


【解决方案1】:

在 Swift 中,字典默认不能排序。因此,如果您对其进行排序并尝试再次检索它,它将遵循最快的路径。所以我不确定为什么你需要在不创建可排序类型的情况下返回它。

如果您真的想对其进行排序,您可以使用元组或结构等各种选项,但所有这些都需要您创建一个新属性。不过,您始终可以将您的山脉设置为这些不同类型之一,然后重新分配它。

【讨论】:

  • 谢谢,我想我误解了作业,我将使用新字典对字典进行排序,谢谢大家!
猜你喜欢
  • 2019-12-14
  • 2021-09-25
  • 1970-01-01
  • 2015-09-28
  • 1970-01-01
  • 2015-07-15
  • 1970-01-01
  • 2021-09-26
相关资源
最近更新 更多