Swift 四:函数的定义和调用

1).函数的定义:

函数的定义语法:

func 函数名(参数名:参数类型,参数名:参数类型...) -> 函数返回值类型 {

        函数实现部分

}

func showInputName(name:String) -> String {

print(name)

return name

}

函数调用语法:

函数名(参数...)

showInputName("Mike")


2).函数可以有多个返回值:使用元组

func showInputName(name:String) -> (String , String) {

print(name)

return ("1" , "2")

}


3).使函数返回值带有参数名

func showInputName(name:String) -> (string1 : String , string2 : String) {

print(name)

return ("1" , "2")

}

let _ = showInputName("haha").string1


4).函数的内部参数和外部参数

//outName为外部参数 name为内部参数

func showInputName(outName name:String) {

  print(name)

}

showInputName(outName: "haha")


5).函数的默认参数

func showInputName(name name:String = "haha") {

print(name)

}

showInputName()  //带默认参数的函数 调用的时时候 如果想要使用默认参数 那么外部参数名也要一起省略


6).函数参数的常量、变量性和inout

函数变量默认是常量类型,如果需要在函数体内更改,可以在声明时候,设置为变量类型:

func showInputName(var name :String) {

let b = name

name = b

}

showInputName("hah")

但是!!!此修改只是表面上的修改,如果想要改变实参值,则需要使用inout关键字:

func showInputName(inout name :Int) {

name += 10

print(name)

}

var a = 10

showInputName(&a)

print(a)  //两个打印结果 均为20


7).变参函数

如果想要传入任意多个参数,可以使用:“ 类型...” 的形式来声明函数:

func showInputName(name : Int...) {

   for i in name {

      print(i)

  }

}

showInputName(1,2,3,4,5)     //注意:变参一定要放在函数参数中的最后一个位置


8).函数类型

函数类型是由函数的参数返回值共同决定的

func showInputName(name : Int) {

}

var _ : (Int) -> Void = showInputName

注:函数类型还可以作为函数返回值的类型

你可能感兴趣的:(Swift 四:函数的定义和调用)