swift学习笔记

第六章 函数

2017-07-13  本文已影响0人  运柱

与c++不同,swift的函数参数更加啰嗦,完整的参数包含参数标签、参数名称、参数类型组成。

func someFunction(argumentLabel parameterName: parameterType) {

}

函数调用时,参数标签写在对应参数的前面,而参数名称在函数内部使用。

例如:

func someFunction(argumentLabel parameterName: Int) {

//statements, use parameterName

}

someFunction(argumentLabel: 1) // calling function

没有指定参数标签时,默认将参数名称作为参数标签。

func greet(person: String) -> String {

let greeting = “hello, ” + person + “!”

return greeting

}

print(greet(person: “Anna”))

通过下划线(“_”)来忽略参数标签,

例如:

func someFunction(_ firstParameterName: Int, secondParameterName: Int) {

}

someFunction(1, secondParameterName: 2)

与c++一样,swift函数也可以提供默认值、也可以提供可变参数;同时也可以提供输入输出参数,c++中输入输出参数是通过指针和引用来实现的,swift中是在参数类型之前添加关键字inout来表示参数是输入输出参数。函数调用时,变量加上&前缀。

返回值

与c++不同,swift函数可以通过元组来返回多个值

func getMinMax(array: [Int]) -> (min: Int, max: Int) {

}

可选元组返回值

func getMinMax(array: [Int]) -> (min: Int, max: Int)? {

}

上面的例子中array可能为空,为空时会触发运行时错误,

增加判断数组为空的语句,

if array.isEmpty {

return nil

}

上一篇 下一篇

猜你喜欢

热点阅读