Swift:你可以将函数存储为字典中的值吗?

时间:2016-06-10 12:36:57

标签: ios xcode swift2

我正在学习Swift,我想知道你是否可以将函数存储为字典中的值。例如,一个类似于映射到函数的字符串的字典。

var test : Dictionary = [String : Double -> Double]()

我试过这个,但是编译器并不喜欢它,说它期待一个','。如果可以创建这样的字典,我将如何创建它呢?

2 个答案:

答案 0 :(得分:2)

你可以这样做:)编译器不会说一句话:)

 typealias myFunc = (Double) -> Double
var test3 : [String : myFunc] = [String : myFunc]()

OR

typealias myFunc = (Double) -> Double
var test3 : Dictionary = [String : myFunc]()

最后,您可以在字典中添加一个:)

let mtfunc : myFunc =  {
     print("Hi")
     return $0
}

test3["Sandeep"] = mtfunc

答案 1 :(得分:1)

宣告它的一种方式:

var test: Dictionary = Dictionary<String, Double -> Double>()