swift学习-闭包
2014-08-07 00:49
197 查看
// Playground - noun: a place where people can play import Cocoa var str = "Hello, playground" /* 闭包 */ let names = ["chris","Alex","Ewa","Barry","Daniella"] func backwards(s1:String,s2:String) -> Bool { return s1>s2 } //排序 var reversed = sort(names) var reversed1 = sort(names,backwards) //闭包表达式语法 var reversed2 = sort(names,{(s1:String,s2:String) -> Bool in return s1 > s2 }) //省去参数类型, var reversed3 = sort(names,{s1,s2 in return s1 > s2}) //单表达式闭包隐式返回,省去return var reversed4 = sort(names,{s1,s2 in s1 > s2}) //参数名缩写 var reversed5 = sort(names,{$0 > $1}) //运算符函数 var reversed6 = sort(names,>) //尾随闭包 var reversed7 = sort(names){$0>$1} reversed7[0] let digitNames = [ 0: "Zero", 1: "One", 2: "Two", 3: "Three", 4: "Four", 5: "Five", 6: "Six", 7: "Seven", 8: "Eight", 9: "Nine" ] let numbers = [16, 58, 510] let strings = numbers.map { (var number) -> String in var output = "" while number > 0 { output = digitNames[number % 10]! + output number /= 10 } return output } strings[0] strings[1] //捕获值 func makeIncrementor(forIncrement amount: Int) -> () -> Int { var runningTotal = 0 func incrementor() -> Int { runningTotal += amount return runningTotal } return incrementor } //函数有int类型的参数,外部命名forIncrement,内部命名amount
相关文章推荐
- Swift学习笔记(9)--闭包
- swift开发学习笔记-闭包
- 【Swift】学习笔记(七)——闭包
- swift 学习<六> 闭包练习
- swift 学习<五> 闭包
- Swift学习之十四:闭包(Closures)
- Swift学习-闭包(七)
- Swift学习笔记-函数和闭包(2)
- Swift学习笔记-函数和闭包(1)
- 黑马程序员——Swift学习笔记:闭包
- 闭包—Swift学习笔记(十)
- Swift 学习之函数和闭包与对象和类—002
- Swift学习笔记 - 函数与闭包
- Swift2学习:Swift概览3-函数和闭包
- swift语言学习-9. 闭包
- 【Swift学习】 网络-代理-闭包的综合应用
- Swift编程语言学习6—— 闭包
- swift 学习(二)基础知识 (函数,闭包,ARC,柯里化,反射)
- Swift学习笔记之闭包
- 黑马程序员——Swift学习笔记:闭包