zoukankan      html  css  js  c++  java
  • 闭包

    闭包:把函数用作类型

    闭包形式1:作为函数返回值

    1 func bibao() ->((Int) ->Int) {
    2     var x = 10
    3     func returnbibao(integer:Int) ->Int {
    4         return x + integer
    5     }
    6     return returnbibao
    7 }
    8 var funcVar = bibao()
    9 print(funcVar(7))
    View Code

     第一行代码中:(Int)这里是3.0的语法(即Int加括号),表示作为函数返回值的闭包函数的形参(就是函数形参);然后整个函数中返回returnbibao与(Int) ->Int组合成为函数签名(函数头部)。

    闭包形式2:作为函数形参类型

     1 func bibao(canShuBiBao:() ->Bool) ->Bool {
     2     if canShuBiBao() {
     3         return true
     4     }
     5     return false
     6 }
     7 func CanShuBiBao() ->Bool {
     8     return true//改变这个值,输出变化
     9 }
    10 print(bibao(canShuBiBao:CanShuBiBao))
    View Code

     第二个函数作为闭包函数,用作形参类型;第一个函数调用时,必须带上——形参名:形参类型。

    此外,{}将创建一个匿名闭包。如:{return $0+$1}("hello","world")

    数组的各种方法:for _ in arrays where 条件、filter、map、reduce。

  • 相关阅读:
    Gist
    Gist
    Gist
    汉字编码与其16进制对照
    Horizon组件安装详解
    Github目录生成器
    MVC模式网站编写经验总结
    Java多线程小结
    JGit与远程仓库链接使用的两种验证方式(ssh和https)
    Peterson算法与Dekker算法解析
  • 原文地址:https://www.cnblogs.com/quanxi/p/5904810.html
Copyright © 2011-2022 走看看