9-Swift之闭包

作者: NetWork小贱 | 来源:发表于2017-05-04 17:58 被阅读11次

1、什么是闭包?#

闭包在Swift中就是一些小的代码块,可以想函数一样使用。

2、闭包的一般形式#

{
    (parameters)->returnType in 
      code1
}

parameters 是闭包传入的参数。returnType 是闭包返回的类型。code1 是闭包内部执行代码。

3、基本闭包#

        /**
         基本闭包的创建
         */
        let numberArray = [11,3,44,2,78,9,4]
        let numbersSorted = {(s1:Int,s2:Int)->Bool in
            /**
             从大到小  s1 > s2
             从小到大  s1 < s2
             */
            return s1 > s2
        }
        let num = numberArray.sorted(by: numbersSorted)
        print(num)

4、不带类型的闭包

        /**
         不带类型的闭包
         */
        let numSArray = [11,2,45,21,4,3,23]
        let num1 = numSArray.sorted(by: { $1 > $0})
        print(num1)

5、闭包可以存在变量中

        /**
         闭包存在变量
         注释:闭包可以没有返回值
         */
        let paramClosure = {(a:Int,b:Int) in a>b}
        let reluse = paramClosure(22,4)
        print(reluse)

6、闭包的声明方式

        /**
         闭包的声明有两种形式
         */
        /* 声明一*/
        var Closure:((Int,Int)->Int)?
        /* 声明二*/
        typealias ClosureAlias = (Int,Int)->Int

相关文章

  • 9-Swift之闭包

    1、什么是闭包?# 闭包在Swift中就是一些小的代码块,可以想函数一样使用。 2、闭包的一般形式# parame...

  • python函数之闭包

    目录 python函数之闭包什么是闭包python中的namespace闭包的条件闭包的优点 python函数之闭...

  • swift闭包学习

    闭包作为参数 参考 Swift学习之闭包

  • 学习JS笔记(第七章-闭包,作用域)

    闭包的概念## 闭包实例## 数据传递更加灵活### 常见错误之循环闭包### 封装变量### 闭包小结## 作用...

  • JavaScript----闭包

    javascript之闭包 闭包的概念     闭包(closure)是 JavaScript 的一种语法特性。 ...

  • python高级之闭包

    python高级之闭包 什么是闭包? 闭包(closure)是函数式编程的重要的语法结构。闭包也是一种组织代码的结...

  • 闭包

    原文出处 JavaScript深入之闭包 定义 MDN 对闭包的定义为: 闭包是指那些能够访问自由变量的函数。 那...

  • Python 入门之 闭包

    Python 入门之 闭包 1、闭包 (1)在嵌套函数内使用(非本层变量)和非全局变量就是闭包 (2)_ clos...

  • swift-闭包

    闭包 闭包定义 闭包简化 - 尾随闭包 闭包参数 闭包返回值 闭包的循环引用

  • 闭包,闭包,闭包

    1、这家伙到底是什么? 网上关于这个的讨论的太多了太多了,有各种的举例子,但是大部分还在寻找这个答案的小伙伴对于变...

网友评论

    本文标题:9-Swift之闭包

    本文链接:https://www.haomeiwen.com/subject/nzxdtxtx.html