花落√莫相思

9-Swift之闭包

2017-05-04  本文已影响11人  NetWork小贱

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

上一篇 下一篇

猜你喜欢

热点阅读