swift - 在 Swift 中排序失败

标签 swift sorting dictionary

我想对我定义为的 Dictionary itemDictionary 进行排序:

var itemDictionary  = [String: [Items]]()
itemDictionary = itemDictionary.sorted { $0.0 < $1.0 }

但随后我收到以下错误代码:

Cannot assign value of type '[(key: String, value: [Items])]' to type '[String : [Items]]'

有人知道为什么会这样吗?

最佳答案

Dictionary根据定义是无序的。您只能调用sorted在上面,因为自 Swift 4 以来,Dictionary符合 Collection , 但由于 Dictionary 的无序性质类型,调用的返回值sortedDictionary 上将是 Array<(key: Key,value: Value)> ,所以一个元组数组,其中元组包含键值对。

如果您需要排序的数据结构,您应该考虑使用实际上可以排序的数据结构。

关于swift - 在 Swift 中排序失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47681609/

相关文章:

c# - 如何使用 DateTime.Now 函数

c - 参数中的指针出现问题..c 中的冒泡排序

单独文件中的python字典

Python-将键值对添加到数组中的字典中

arrays - Swift 有内置的 isWord 函数吗?

swift - 在 MKSnapshot 图像中绘制带标题的 MKPointAnnotation

r - 有效提取数据框中每列和行的最小值和索引,然后按值排名

Python Dataframe包含字典列表,需要使用字典项创建新的dataframe

ios - 致命异常 : NSRangeException

iOS 12,Xcode 10 : UIView setNeedsDisplay(_:) seems to be broken