无法将'[String:Double]'类型的值转换为预期的参数类型'[(String,Double)]'Swift 4

时间:2018-02-23 03:58:21

标签: ios swift xcode

此错误有什么问题?它们不是同一类型吗?有人请帮忙,我一直在寻找几个小时,找不到任何东西。当我尝试将我的[String:Double]放入需要[(String:Double)]的参数时,会出现此错误吗?谢谢你的时间

2 个答案:

答案 0 :(得分:3)

[String : Double]是一本字典。字典由密钥及其对应的值组成。

let dictionary = ["Age" : 20]

另一方面,[(String : Double)]是一个元组数组,实际上它们位于字典和结构的空间中。它们具有特殊类型的值,如果我们想要从函数调用返回多个值,则需要元组。

let user = (name: "Ankur Lahiry", age: 25)

如果任何函数返回用户,那么我们可以从函数返回两个值。我们可以提取结果,如

let name = user.name
let age = user.age

我想你想使用字典数组[[dictionary: Double]]

答案 1 :(得分:-2)

看起来你的函数正在接受(String,Double)类型的元组数组。但是您尝试传递 String:Double 类型的字典数组。 检查是否需要元组或字典数组。