swift 中闭包的写法与使用

swift 中闭包的写法与使用

1没有参数没有返回值得情况

    let b1 = {
        print("闭包")
    }
    b1()

2没有参数,有返回值的情况 ,

    let b2  = {
      () -> (Int)  in
        return 123
    }
    print(b2())

3有参数 没有返回值 要用in 隔开

    let block = {
        (num : Int) in
        print("输入了\(num)")
    }

    block(123)

4有参数 有返回值的情况 要用 in 隔开

    let b4 = {
        (intNum : Int) -> (Int) in
        return intNum
    }

懒加载的写法

lazy var aba : UILabel = {

    let label = UILabel(frame: CGRect(x: 0, y: 0, width: 120, height: 123))

    label.text = "label"

    label.textColor = UIColor.red

    return label

}()

网络请求

func loadData ()  {

    DispatchQueue.global().async {

        // 拿到数据

        print("当前线程\(Thread.current)")

        // 回到主线程

        DispatchQueue.main.async(execute: {

          print("当前线程\(Thread.current)")

        })

    }

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容