Swift学习之闭包
来源:互联网 发布:python读取dat文件 编辑:程序博客网 时间:2024/06/05 10:53
闭包的简单用法
//: Playground - noun: a place where people can playimport UIKitlet names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]func backWards (s1:String,s2:String) ->Bool{ return s1 < s2}var reversed = names.sort(backWards)reversed = names.sort({ (s1:String,s2:String) -> Bool in return s1 > s2})reversed = names.sort({(s1:String,s2:String) ->Bool in return s1 > s2})print(reversed) //["Ewa", "Daniella", "Chris", "Barry", "Alex"]reversed = names.sort({s1,s2 in return s1 > s2})reversed = names.sort({$0 > $1})reversed = names.sort(<)reversed = names.sort(){$0 < $1}reversed = names.sort{$0 > $1}func incrementNum (originValue value :Int) -> ()->Int { var runningTotal = 0 func incrementer()->Int{ runningTotal += value return runningTotal } return incrementer}var firstIncrement = incrementNum(originValue: 10)firstIncrement() //10firstIncrement() //20firstIncrement() //30var secondIncrement = incrementNum(originValue: 7)secondIncrement() //7secondIncrement() //14secondIncrement() //21var thirdIncrement = secondIncrementthirdIncrement()func someFuncWithNonescapeClosure(@noescape closure:()->Void){ closure()}var completionHandler :[()->Void] = []func someFunctWithScapeClosure(completion:()->Void){ completionHandler.append(completion)}class someClass { var x = 10 func doSomtiong() { //逃逸的不会立即执行 someFunctWithScapeClosure{ self.x -= 100 } //非逃逸的立即执行 someFuncWithNonescapeClosure { () -> Void in x += 100 } }}var instance = someClass()instance.doSomtiong()print(instance.x) //110completionHandler.first?()print(instance.x) //10
0 0
- Swift学习之闭包
- swift学习之闭包
- swift学习之- 闭包
- Swift学习之十四:闭包(Closures)
- Swift学习之十四:闭包(Closures)
- swift学习之三:闭包表达式
- swift学习之闭包(closure)
- Swift学习笔记之闭包
- Swift学习之十四:闭包(Closures) .
- swift学习笔记之闭包
- swift 之闭包的学习笔记
- swift 学习笔记之闭包
- Swift学习之十四:闭包(Closures)
- Swift基础之闭包Closure学习
- swift闭包学习
- swift学习--闭包
- Swift之闭包
- Swift之闭包
- python 多线程的通俗易懂的博客
- Redis简介
- Effective Java读书笔记(三)
- 编程日常:创建枚举窗体的线程, 结果无法找到目标窗体
- poj 1308 Is It A Tree?(并查集)
- Swift学习之闭包
- 调用物流接口按时间正序显示数据
- Unity 3D中的 SetActive() 与 OnEnable()、OnDisable()要注意的
- 监控 DNS 流量,预防安全隐患五大招!
- 2016.1.19
- Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用]
- 【bzoj2705】[SDOI2012]Longge的问题 欧拉函数
- 抽象工厂
- 复制一个Word文档的部分或全部内容到另一个Word文档