Swift-関数--05
2138 ワード
関数はコードと会意の名前で、特定のタスクを実行するために関数を「呼び出し(call)」と呼びます.式のように、関数を使用するにはパラメータ関数呼び出しを提供する必要があります.結果は、パラメータと戻り値タイプを含む戻り値関数と呼ばれます.
定義関数:形式:func関数名(パラメータ1:タイプ、パラメータ2:タイプ、...)->結果を返すタイプ{実行文return戻り値}呼び出し:var変数名=関数名(変数1、変数2、...)
内部パラメータ名、外部パラメータ名
≪関数タイプ|Function Type|oraolap≫:パラメータと戻りタイプを含む略記形式で、通常の変数のように使用できます.一般的には、次のような関数プログラミングに使用されます.
≪可変パラメータ|Variable Parameters|oem_src≫:可変パラメータは、ゼロまたは複数の値を受け入れることができます.関数呼び出し時に、変数パラメータを使用して関数パラメータを指定できます.その数は不確定です.
定義関数:形式:func関数名(パラメータ1:タイプ、パラメータ2:タイプ、...)->結果を返すタイプ{実行文return戻り値}呼び出し:var変数名=関数名(変数1、変数2、...)
内部パラメータ名、外部パラメータ名
// :
//1.1
func add (a:Int, b : Int) -> Int {
return a + b
}
var sum = add(a: 3, b: 4) // 7
//1.2
// _
func add1 (_ a:Int,_ b : Int) -> Int {
return a + b
}
add1(1, 2)
//2.1
func sayHello(name:String) -> String {
return "Hello" + name
}
sayHello(name: " xiaobo")
//2.2
// ,WithGreetingWord ,greeting ,
func sayHello1(name:String, WithGreetingWord greeting:String) -> String {
return "\(greeting),\(name)!"
}
sayHello1(name: "xiaobo", WithGreetingWord: "Hi") //Hi,xiaobo!
//3.1
// , ,
func welcome() {
print(" ")
}
welcome()
// ( )
func maxMin() -> (Int,Int) {
return (Int.min,Int.max)
}
maxMin().0
maxMin().1
// : ,
func add1(x:Int, y:Int, z:Int) -> Int {
return x + y + z
}
add1(x: 1, y: 2, z: 3)
//
func add2(x:Int, increment:Int = 2) -> Int {
return x + increment;
}
add2(x: 3)
≪関数タイプ|Function Type|oraolap≫:パラメータと戻りタイプを含む略記形式で、通常の変数のように使用できます.一般的には、次のような関数プログラミングに使用されます.
(Int,Int) -> Int
func calculate(x:Int , y:Int , method:(Int,Int) -> Int) -> Int {
return method(x,y)
}
func add3(x:Int ,y:Int) -> Int {
return x + y
}
func multiply(x:Int,y:Int) -> Int {
return x * y
}
calculate(x: 3, y: 4, method: add3(x:y:))
calculate(x: 3, y: 4, method: add3)
calculate(x: 5, y: 6, method: multiply)
≪可変パラメータ|Variable Parameters|oem_src≫:可変パラメータは、ゼロまたは複数の値を受け入れることができます.関数呼び出し時に、変数パラメータを使用して関数パラメータを指定できます.その数は不確定です.
import Cocoa
func vari(members: N...){
for i in members {
print(i)
}
}
vari(members: 4,3,5)
vari(members: 4.5, 3.1, 5.6)
vari(members: "Google", "Baidu", "Runoob")