學習來自《極客學院: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 ...