从零开始自学Swift(五)
2015-09-11 18:44
465 查看
当函数的返回类型为函数时
func stepForward(input:Int)->Int{ return input+1 } func stepBackward(input:Int)->Int{ return input-1 } /*(Int)代表这个是一个参数为int型的函数,(Int)->Int代表你要返回的函数类型必须与之一致*/ func chooseStepFunction(backwards:Bool)->(Int)->Int{ return backwards ? stepForward: stepBackward } var currentStep=3 //得到的是一个函数,该函数的参数为int型,返回的类型也是int型 let step=chooseStepFunction(currentStep>0) print(step(currentStep))
常规闭包
/*闭包*/ //定义一个无序的数组 var numbers:[Int]=[23,14,51,-11,8,-22,-91,33,67,98] var sortArray=numbers.sort({(n1:Int,n2:Int)->Bool in return n1>n2}) print(sortArray)
尾随闭包
/*尾随闭包*/ //定义一个无序的数组 var numbers:[Int]=[23,14,51,-11,8,-22,-91,33,67,98] //定义一个字典 var digit:[Int:String]=[0:"zero",1:"one",2:"two",3:"three",4:"four",5:"five",6:"six",7:"seven",8:"eight",9:"nine"] let strings=numbers.map{ (var number)->String in var output="" if number<0{ number=number * (0-1) } while number>0{ output=digit[number%10]!+output number/=10 } return output }
相关文章推荐
- Apple Swift学习教程
- Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍
- Swift中定义二维数组的方法及遍历方法示例
- 简单分析Swift语言的一些基本特征
- Swift与C语言指针结合使用实例
- Swift心得笔记之控制流
- 用Swift构建一个简单的iOS邮件应用的方法
- 苹果公司推出的新编程语言Swift简介和入门教程
- Swift中的指针操作和使用详细介绍
- Swift中使用正则表达式的一些方法
- Swift心得笔记之运算符
- Swift中使用可选类型完美解决占位问题
- Swift学习笔记之构造器重载
- Swift中的Access Control权限控制介绍
- Swift类型创建之自定义一个类型详解
- Swift教程之控制流详解
- Swift中初始化方法的顺序介绍
- Swift里的值类型与引用类型区别和使用
- Swift调用Objective-C编写的API实例