Swift 函数的参数和返回值
Swift 4用户定义的函数可以具有多个参数和不同的返回值。
a) 没有参数和返回值的函数
没有参数和返回值的Swift 4函数不接收任何输入并返回值。
语法
func funcname() {
//statements
}
OR
func funcname() -> () {
//statements
}
OR
func funcname() -> Void {
//statements
}
示例
func greeting() {
print("Good Morning Everyone")
}
greeting()
输出:
Good Morning Everyone
b) 没有参数但有返回值的函数
示例
func greeting() -> String {
return "Good Morning Everyone"
}
let msg = greeting()
print(msg)
输出:
Good Morning Everyone
在上面的程序中,返回类型是String。现在,语句必须从函数内部的语句返回一个字符串,否则会出错。
return关键字将程序的控制权从函数体转移到函数调用处。要从函数中返回值,我们必须在return关键字之后添加值。
c) 带有参数但没有返回值的函数
在Swift 4中,有些函数有参数但没有返回值。参数用于在函数中获取输入。
语法
func funcname(parameterName:Type) {
//statements
}
示例
func greeting(msg:String) {
print(msg)
}
greeting(msg: "Good Morning Everyone")
输出:
Good Morning Everyone
在上面的程序中,该函数接受一个 String 类型的单个参数。参数只能在函数内部使用。您可以通过将字符串值和参数名一起传递给函数来调用该函数,如 greeting(msg: “大家早上好”) 。msg参数名只在函数内部可见,如 greeting() 。
之后,语句print(msg)输出”大家早上好”。
d) 带有参数和返回值的函数
当一个函数接受参数并返回值时。
语法
func funcname(parameterName:Type) -> ReturnType {
//statements
}
示例
func greeting(name:String) -> String {
return "Welcome to JavaTpoint " + name
}
let msg = greeting(name: "Ajeet")
print(msg)
输出:
Welcome to JavaTpoint Ajeet
你可以看到,在上面的程序中,该函数接受一个类型为 String 的单个参数,并返回一个类型为 Welcome to JavaTpoint Ajeet 的值,该值的类型也是 String 。
e)具有多个参数和多个返回值的函数
这些函数用于接受由逗号分隔的多个参数,并返回多个返回值。在Swift中,元组被用于返回多个值。
语法
func funcname(parameterName:Type, parameterName2:Type ,...) -> (ReturnType, ReturnType...) {
//statements
}
示例
func greeting(name:String, coin:Int) -> (String, Int) {
let msg = "Hello Mr./Ms." + name
var userCoin = coin
if coin < 0 {
userCoin = 0
}
return (msg, userCoin)
}
let msg = greeting(name: "Ajeet", coin: 20)
print(msg.0)
print("You have \(msg.1) coins left in your wallet.")
输出结果:
Hello Mr./Ms.Ajeet
You have 20 coins left in your wallet.