Swift - 32 - 函数类型
//: Playground - noun: a place where people can play import UIKit func add(a:Int, b:Int) -> Int
{
return a + b
} // 其中, (Int, Int) -> Int 就是显式的声明函数类型
let anotherAdd:(Int, Int) -> Int = add
anotherAdd(3, 4) /*--------------------------------------------------------------------*/ func sayHello(nickName:String)
{
print("Hello, \(nickName)")
} // 这里需要注意的是无返回值的函数类型的声明格式
let anotherGreeting:(String) -> Void = sayHello
anotherGreeting("Rinpe Chan")
// 或者写成
let greeting:(String) -> () = sayHello
greeting("BoBo")
// 或者写成(只有一个参数的时候有效)
let anotherHello:String -> () = sayHello
anotherHello("my son") /*------------------------------举个栗子--------------------------------*/ // 假设老师要对两组学生的分数进行不同操作 func changeScores1(inout scores:[Int]) {
for index in 0..<scores.count {
scores[index] += 3
}
} func changeScores2(inout scores:[Int]) {
for index in 0..<scores.count {
scores[index] -= 5;
}
} var scores1 = [36, 61, 78, 99, 100]
changeScores1(&scores1) var scores2 = [12, 45, 76, 88, 96]
changeScores2(&scores2) // 其实对于上面两个方法, 只是for循环里面的内容不同, 也就是老师对分数的操作
// 可以简化为: func changeScores(op:(Int) -> Int, inout scores:[Int]) {
for index in 0..<scores.count {
op(scores[index])
}
} func op1(originScore:Int) -> Int {
return originScore + 3
} func op2(originScore:Int) -> Int {
return originScore - 5
} changeScores(op1, scores: &scores1)
changeScores(op2, scores: &scores2)
Swift - 32 - 函数类型的更多相关文章
- Swift - 33 - 返回函数类型和函数嵌套
		//: Playground - noun: a place where people can play import UIKit /*---------------------------返回函数类 ... 
- Swift 之 函数与闭包的应用实例
		http://www.cocoachina.com/swift/20160106/14862.html 今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的.说到函数,只要是写过程序 ... 
- 窥探Swift之函数与闭包的应用实例
		今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小实 ... 
- Swift:函数和闭包
		函数 函数是一个完成独立任务的代码块,Swift中的函数不仅可以像C语言中的函数一样有函数的参数和返回值,而且还支持嵌套,并且有函数参数默认值.可变参数等. //定义一个函数,注意参数和返回值,如果没 ... 
- Swift(三.函数)
		一.swift中的函数分为以下几类吧 1>无参无返 2>无参有返 3>有参无返 4>有参有返 5>有参多返 二.看下面几个例子吧 1>无参无返 func a ... 
- 窥探 Swift 之 函数与闭包的应用实例
		今天的博客算是比较基础的,还是那句话,基础这东西在什么时候 都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小 ... 
- Swift - 自定义函数规则说明
		1,无返回值的函数 1 2 3 func test(name:String){ } 2,返回一个返回值 1 2 3 func test(name:String) -> Bool{ r ... 
- Swift之函数语法详解
		函数 函数是用来完成特定任务的独立的代码块.你给一个函数起一个合适的名字,用来标识函数做什么,并且当函数需要执行的时候,这个名字会被“调用”. Swift 统一的函数语法足够灵活,可以用来表示任何函数 ... 
- Swift 中函数使用指南
		关于Swift中的各种函数的使用的总结 前言 时间久了,好多东西我们就会慢慢忘记,在这里总结一下Swift中函数的使用原则,把大部分的函数使用技巧用代码示例来做了演示,但是如果想提高,还是要多多思考才 ... 
随机推荐
- 在SystemOut.log中发现HMGR0152W: 检测到CPU 饥饿的消息 <转载>
			今天系统报警了!!!!!顿时人又不好了!!!查看系统日志, 报错如下: Did not receive adequate CPU time slice. Last known CPU usage ti ... 
- 使用CSS为图片添加边框的几种方法
			css的应用十分广泛,即便用在图片的效果中也是方法多样,本文下面就介绍五种为图片添加特殊效果边框的CSS写法阴影效果 通过使用带有一些padding之的背景图来添加阴影效果. HTML <img ... 
- Struts2 实现分页
			1.转自:http://www.cnblogs.com/shiyangxt/archive/2008/11/04/1316737.html环境:MyEclipse6.5+Mysql5+struts2. ... 
- 15.禁用ViewState
			默认情况下ASP.net是启用ViewState的,这样在页面中会生成冗长的隐藏字段,ViewState对于需要PostBack处理的页面才可能有用,对于不需要交互的页面则完全没有必要用ViewSta ... 
- 7.DropDownList的绑定
			ListView中是无法像TextBox等控件那样将DropDownList的选中值绑定到数据字段的,必须编程处理.如例子:人员的性别(男,女,保密),三个值固定写在DropDownList中. 在显 ... 
- Maven实战四
			转载:http://www.iteye.com/topic/1123231 为什么要定义Maven坐标 在我们开发Maven项目的时候,需要为其定义适当的坐标,这是Maven强制要求的.在这 ... 
- Linux&shell 之Linux文件权限
			写在前面:案例.常用.归类.解释说明.(By Jim) Linux文件权限用户useradd test (添加用户test)userdel test (删除用户test)passwd test(修改用 ... 
- 火狐浏览器对border-radius的渲染问题
- Delphi TdxComponentPrinter页头页脚的设定
			TdxComponentPrinter页头页脚的设定 抄一段备忘.用程序控制也一样.如果是这样,那么 双击TdxComponentPrinter控件,在出现的窗口中,点击ADD,建立一个与TcxGri ... 
- SQL条件表达式
			需求:数据表中如果满足某个条件,返回表中所有数据,否则不返回数据. 语法:CASE 表达式是一种通用的条件表达式,类似于其它语言中的 if/else 语句. CASE WHEN condition T ... 
