声明函数输入参数在Swift中等于nil

时间:2016-11-14 18:58:59

标签: swift

func taskWithMethod(URLString: String, parameters: [String: AnyObject]?, queryParameters: [String: AnyObject]? = nil){}

此功能中parametersqueryParameters之间有什么区别?看起来queryParameters被定义为nil,但我仍然可以将queryParameters值传递给此函数。

1 个答案:

答案 0 :(得分:2)

那是Default Parameter Value (see section "Default Parameter Values")。如果未传入任何值,则默认为nil

例如,可以像这样调用此函数:

taskWithMethod(URLString: someString, parameters: dict1, queryParameters: dict2)

但它也可以这样调用:

taskWithMethod(URLString: someString, parameters: dict1)

在这种情况下,queryParameters设置为其默认值nil