iOS _ 閉包 ( Closures )
Closures 的學習筆記 Closures 和 Function 的功能很相似,而從 Closures 就像似一個沒有名稱的 Function, 所以 Closures 可以定義一段程式碼,也可以接受參數和回傳資料。 然而以下是兩者之間的差異! 首先在 Apple Closures的語法是 { ( parameters ) -> ( return type) in ( statements ) } 從兩者的格式來看就能更清楚, Function func 方法名 (參數一,餐數二) -> 回傳值 { 程式碼區域 } Closures { (參數一, 參數二) -> 回傳值 in 程式碼區域 } 從這兩個格式來看, Function 把前面的方法名稱拿掉, 然後把參數和回傳型別拿到大括弧內 但 Closures 沒辦法像 Function 可以單獨定義, 因此必須指派為 變數 或是 常數 或 當作參數傳入 Function ( 將 Closures 指派為常數 ) ( 將 Closures 指派當做參數傳入 Function ,而這個也是最常看到的用法) 通常如果沒有重覆需要呼叫需求時 就 closures 來處理, 在執行方法後要立即執行其他事情時使用, ( 例如 網路下載資料後,去更新呈現的畫面內容 ) 以上是基本的 Closures 的 基本寫法。 接下來是 Closures 的簡寫,這個也是常常每個不同專案較長看到的。 當 Closures 是 Function 的最後一個參數的時候, 可以 移除 Function 中 Closures 的『 參數 』和『 冒號 』, 然後最後的『 小括號 』 移到前面 。 如同上面的是 簡寫 過的方式 birthday(month: 3, day: 1 ) { ( ) -> String in return " Happy Birthday " }...