Swift 中的函式(下)

2021-09-23 21:43:53 字數 1544 閱讀 4862

學習來自《極客學院:swift中的函式》

工具:xcode6.4

直接上基礎的示例**,多敲多體會就會有收穫:百看不如一敲,一敲就會

1 import foundation23

/***********巢狀函式************

*/4 func getmathfunc(#type: string) -> (int) -> int

8 func cube(num:int) -> int

11switch(type)

17 }

18 var mathfunc = getmathfunc(type: "

other

")19 println(mathfunc(4))

20//

由於巢狀函式在外函式內部只作用於該函式內部,所以使用閉包簡化這個巢狀函式

2122

/***********閉包************

*/23

/*24

27*/

28 func getmathfunc_1(#type: string) -> (int) -> int

32//

func cube(num:int) -> int

35switch(type)

41default:

42return

46 }

47 }

48 var mathfunc_1 = getmathfunc_1(type: "

other

")49 println(mathfunc_1(5))

50//

利用上下文推斷型別

51 var squre1: (int) -> int =

52 println(squre1(8))

53 var squre2: (int) -> int =

54 println(squre2(9))

55//

省略形參名,通過$0,$1...來引用第乙個、第二個引數

56 var squre3: (int) -> int =

57 println(squre3(10))

5859

//閉包的經典使用

60 var result: int =

65return result

66 }(4,3)

67 println(result)

6869

//尾隨閉包

70 func somefunction(num:int,fn: (int)->())//

第乙個引數為整型,第二個引數為閉包

73//

呼叫這個函式: somefunction(20,{})

74//

使用尾隨閉包呼叫函式的格式:somefunction(20){}

7576

//捕獲上下文中的變數或者常量

77 func makearr(ele:string) ->() ->[string]

85return addelement

86 }

Swift 中的高階函式和函式巢狀

在swift中,函式可做為 一等公民 的存在,也就意味著,我們可以和使用int以及string一樣,將函式當做 引數 值 型別來使用。其中,將函式當作乙個引數和值來使用可見下 typealias addtwoints int,int int var functype addtwoints.self ...

swift中的函式的使用,巢狀

函式 swift 中 函式的關鍵字叫 func func 函式名 引數 返回值 函式的宣告與實現 func 問候語 name string day string string 函式呼叫 在xcode7之前不用加 print 問候語 lisa 星期三 在xcode7之後就需要加標籤,如下 print ...

Swift中的柯里化函式

柯里化函式是把接受多個引數的函式變換成接受乙個單一引數 最初函式的第乙個引數 的函式,並且返回接受餘下的引數而且返回結果的新函式。func sum a int,b int int sum 1,2 輸出3swift中書寫柯里化函式 fun function parameters parameters ...