我将字典定义为:
var options: Dictionary <String, AnyObject>?
当我试着打电话时
Array(options?.keys)
我收到此错误:
缺少参数标签&#39; arrayLiteral:&#39;在电话中
如何从我的字典中取出密钥?
答案 0 :(得分:1)
Swift中的对象构造函数(即init()
s)需要为每个参数指定一个名称,因此需要调用Array(arrayLiteral: options?.keys)
。你可能不得不打开可选项。
答案 1 :(得分:0)
一个答案是您传递的是可选值而不是常规/非可选值。
这有效:
var options: Dictionary <String, AnyObject>?
Array(options!.keys)
但是还有更多。在我自己的一个单独的情况下,我从自定义对象的文字数组创建一个集合时看到了这个错误,但只有在我将自定义对象更改为不从NSObject继承之后才会看到。
情节变浓。