闭包
来源:互联网 发布:男士短款风衣知乎 编辑:程序博客网 时间:2024/05/21 06:49
```// 1.最简单的闭包定义:无参数无返回值,可以省略in关键字let a = { print("a")}// 调用闭包a()// 2.无参数无返回值的闭包// in 关键字后面的是实现let b = { () -> () in print("b")}// 调用闭包b()// 3.有参数有返回值的闭包let sum = { (num1: Int, num2: Int) -> (Int) in return num1 + num2}// 调用闭包print(sum(10, 20))// 4.闭包回调func fetchData(completion: @escaping (_ result: String) -> ()) -> () { // 模拟数据 let data = "哈哈" completion(data)}// 尾随闭包fetchData { (result) in print(result)}// 解决循环引用// 类似OC的方式weak var weakSelf = selffetchData { (result) in print(weakSelf!.view)}
阅读全文
0 0
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 闭包
- 常见的HTTP状态码(HTTP Status Code)说明
- 7-85 红色警报(25 分)
- MyBatis创建流程
- 数组和结构
- SpringMVC中的/*和/的区别
- 闭包
- heartbeat+Haproxy多VIP负载均衡高可用
- java面试题上
- HDU1823 Luck and Love (二维线段树 + 单点更新 + 区间查询)
- 三个孩子年龄相乘是36,将三个孩子的年龄从大到小输出的智力编程题
- Chinese Zodiac---ACM青岛Regional
- 查看网页编码方式的通用方法
- The first Day
- 面试常考 MySQL优化 事务处理 MyISAM和InnoDB索引实现