Swift 函數(shù)式學習-鏈式調用

一般函數(shù)調用

        //0.一般函數(shù)調用
        var someClosure = {
            (param: String) in
            print(param)
        }       
        someClosure("call some closure")
        // = "call some closure"

鏈式調用

        //1.鏈式調用-返回值是函數(shù),并且函數(shù)的返回值是調用者本身,可以構成鏈式調用
        class Home {
            typealias SELF = Home
            var run1:(String) -> SELF {
                return {
                    print($0)
                    return self
                }
            }
            
            var run2:(String) -> SELF {
                return {
                    print($0)
                    return self
                }
            }
            
            func runrun() {
                run1("1").run2("2")
            }
        }
        
        Home().runrun() 
         =  /* 
            1
            2
              */

        struct MyFactory {
            var result = 0
            mutating func calculate(closure:(Int) -> Int) -> MyFactory {
                result = closure(result)
                return self
            }
        }
        
        class ViewController {
            
            func myClick()  {
                var calc = MyFactory()
                let result = calc.calculate {
                    var rs = $0 + 10
                    rs *= 10
                    return rs
                    }.result
                print(result)
            }
        }
        
        ViewController().myClick() // = 100
主要流向

參考資料來源:http://valiantcat.com/

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,881評論 25 709
  • 原文鏈接:https://github.com/EasyKotlin 值就是函數(shù),函數(shù)就是值。所有函數(shù)都消費函數(shù),...
    JackChen1024閱讀 6,326評論 1 17
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評論 19 139
  • 記不清是第幾次被窗外的蟬鳴吵醒,再無心午睡了。 這種生物很奇妙,它在若蟲時期要在土壤中生活幾年甚至十幾年...
    就荒202閱讀 525評論 0 0
  • 導 語 如果說喬峰情商很低,各位讀者會不會很大意見?作為丐幫幫主,似乎情商高不高沒關系。但作為大俠,情商低就會要了...
    飄雨桐V閱讀 968評論 0 2

友情鏈接更多精彩內容