无法下标String类型的值:AnyObject

时间:2018-01-26 15:15:33

标签: arrays sorting swift3 swift4 completionhandler

我正在制作一个费用跟踪应用程序,在这里我有一些代码,其中我想返回一个数组,其中日期为字符串,它们的费用作为这些日期的项目,以便我可以使用日期作为tableViews和费用的标题作为那些部分的细胞。但是我在最后一行得到以下错误。

ValueError:invalid literal for int() with base 10: '0x15'

不能使用'String'类型的索引下标'[(key:String,value:[Expense])]'类型的值

但我不明白为什么会这样。有人可以帮助我吗?

items.append(groupedExpensesSorted[eachKey])

1 个答案:

答案 0 :(得分:0)

错误很明显。

  

无法下标类型' [(键:字符串,值:[费用])]'索引类型为' String'

表示它所说的内容:一个元组数组不能被(字符串)键下载

  • groupedExpenses是字典(var groupedExpenses = Dictionary(grouping:...
  • 排序应用于字典(实际上这是一个矛盾)将字典转换为(key,value)元组的数组
  • 数组是按索引而不是按键。这就是错误消息所说的内容。