2016-06-10 15 views
0

我正在學習Swift,我想知道你是否可以將函數作爲值存儲在字典中。例如,一個字典可以像字符串映射到一個函數。Swift:你可以將函數作爲值存儲在字典中嗎?

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

我試過這個,但是編譯器不喜歡它,說它期望是','。如果創建這樣的字典是可能的,我將如何創建它?

回答

1

你可以做這樣的事情:)和編譯器不會說一個字:)

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

一種聲明方式:

var test: Dictionary = Dictionary<String, Double -> Double>() 
相關問題