美文网首页ios专题iOS-swift
十三、Swift3.0之闭包的定义和GCD实际使用

十三、Swift3.0之闭包的定义和GCD实际使用

作者: ZhengYaWei | 来源:发表于2017-02-24 00:42 被阅读117次

闭包定义的三种形式(无参数无返回值、有参数无返回值、有参数有返回值)

        //1、最简单的闭包
        //() -> () 没有参数,没有返回值
        //如果没有参数,没有返回值,可以省略,包括in也可以省略
        let b1 = {
            print("hello")
        }
        //执行闭包
        b1()
        
        //2、带参数的闭包
        //注意:闭包中,参数 返回值 实现代码都写在{ }中
        //需要使用关键字 in 来分割定义和实现
        //格式: {形参列表 -> 返回值类型  in 实现代码}
        //这个形式(x: Int) -> () 函数非常类似
        let b2 = {(x: Int) -> () in
           print(x)
        }
        //闭包调用
        b2(100)
       
        //3、带参数带返回值的闭包
        let b3 = {(x: Int) -> Int in
            return x + 250
        }
        //闭包调用
        print(b3(10))

Swift3.0中GCD的写法:

       DispatchQueue.global().async {
            print("耗时操作\(Thread.current)")
            
            //主队列
            DispatchQueue.main.async {
                print("主线程更新UI\(Thread.current)")
            }
        }

相关文章

  • swift中GCD的使用详情

    想看swift3.0使用GCD,请点击GCD详解 想看swift3.0闭包的使用和介绍,请点击Swift版闭包使用...

  • 十三、Swift3.0之闭包的定义和GCD实际使用

    闭包定义的三种形式(无参数无返回值、有参数无返回值、有参数有返回值) Swift3.0中GCD的写法:

  • 9 闭包——《Swift3.0从入门到出家》

    9 闭包——《Swift3.0从入门到出家》 闭包 Swift语言中可以使用一块独立代码块替代函数的定义,称独立的...

  • Swift3.0 基础语法2

    主要分为以下几个部分: 1.函数1.1 函数的定义1.2 闭包1.3 多线程GCD的变化1.4 闭包循环引用1.5...

  • groovy-闭包

    定义和执行闭包 闭包作为参数返回 闭包作为参数传递 闭包使用外部变量 注意: 闭包可使用(引用)闭包外部定义的变量...

  • 闭包

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

  • Swift入门二(对象函数)

    函数 闭包 GCD 尾随闭包 闭包循环引用解决(OC) 闭包循环引用解决(swift推荐) 面向对象 命名空间: ...

  • SWIFT 闭包

    闭包定义 定义一个闭包闭包 = { (行参) -> 返回值 in // 代码实现 }in 用于区分函数定义和代码实...

  • Swift 2.0 学习笔记 7_闭包

    //: 闭包 //: 闭包的定义 // 闭包是自包含的函数代码块, 可以在代码中被传递和使用. 闭包可以捕获和存储...

  • Escaping Closures - Swift

    逃逸闭包和非逃逸闭包 逃逸闭包(escaping closure),什么是逃逸闭包?苹果官方给的定义是:当一个闭包...

网友评论

    本文标题:十三、Swift3.0之闭包的定义和GCD实际使用

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