- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数和闭包讲述
注意:传递一个可变参数的参数的值时,函数体中是以提供适当类型的数组的形式存在。例如,一个可变参数的名称为numbers和类型为Double...在函数体内就作为名为numbers类型为Double[]的常量数组。 func arithmeticMean(numbers: Double...) - Double { var total: Double = 0 for number in numbers { total += number } return total / Double(numbers.count) } arithmeticMean(1, 2, 3, 4, 5) // returns 3.0, which is the arithmetic mean of these five numbers arithmeticMean(3, 8, 19) // returns 10.0, which is the arithmetic mean of these three numbers 提示:函数可以最多有一个可变参数的参数,而且它必须出现在参数列表的最后以避免多参数函 数调用时出现歧义。如果函数有一个或多个参数使用默认值,并且还具有可变参数,将可变参数放在列表的 最末尾的所有默认值的参数之后。 函数参数的默认值都是常量。 通过指定一个或多个参数作为变量参数,而不是在函数内部为自己定义一个新的变量。变量参数是变量而不是常量。 func alignRight(var string: String, countnum: Int, pad: Character) - String { let amountToPad = countnum - count(string) for _ in 1...amountToPad { string = String(pad) + string } return string } alignRight(aaa,10,*) 可变参数:只能在函数本身内改变。如果想有一个函数来修改参数的值,并且想让这些变化要坚持在函数调用结束后,你就可以定义输入-输出参数来代替。 关键字:?inout 定义: func 函数名(inout 参数名1:类型1, inout 参数2:类型2 ) { } 调用:函数(参数名1, 参数名2) 每一个函数都是特定的函数类型,可以充当参数类型和函数的返回类型。 func addTwoInts(a: Int, b: Int) - Int { return a + b } func multiplyTwoInts(a: Int, b: Int) - Int { return a * b } 说明:这个函数类型有两个int型的参数,并返回一个int类型的值。 func printHelloWorld() { println(hello, world) } 说明:函数没有参数,并返回void。函数不显式地指出一个返回值类型是void,在swift中相当于一个空元组,显示为( )。 在swift中,可以像任何其他类型一样使用函数类型。可以定义一个常量或变量为一个函数类型,指定适当的函数给该变量。 var mathFunction: (Int, Int) - Int = addTwoInts 说明: (1)定义一个名为mathFunction变量,该变量的类型为: 一个函数,接受两个int值,并返回一个int值。 (2)设置这个函数变量值为addTwoInts函数,此时两者拥有了同样的功能。 可以使用一个函数类型作为另一个函数的参数类型。 func printMathResult(mathFunction: (Int, Int) - Int, a: Int, b: Int) { println(Result: \(mathFunction(a, b))) } printMathResult(addTwoInts, 3, 5) // prints Result: 8 使用一个函数类型作为另一个函数的返回类型。 func chooseStepFunction(backwards: Bool) - (Int) - Int { return backwards ? stepBackward : stepForward } 嵌套函数:在其他函数中定义的函数。 嵌套函数默认对外界是隐藏的,但仍然可以被外部调用。 func chooseStepFunction(backwards: Bool) - (Int) - Int { func
您可能关注的文档
最近下载
- 2024年4月广东深圳市光明区马田街道办事处招聘一般专干及笔试历年典型考题及考点剖析附答案带详解.docx
- 文秘技能大赛题库完整.pdf
- 建筑工程图集 07SJ504-1 隔断、隔断墙(一).pdf
- 班级管理方案和班委职责与班级管理条例(范本)合集.doc VIP
- 2025年广东省高中语文学业水平合格考试卷试题(含答案详解).pdf VIP
- 金融监管学银行监管讲义课件.pptx
- 高中体育与健康_篮球 传切配合 教学课件设计.ppt
- 二 《简单相信,傻傻坚持》(教学课件)-【中职专用】高二语文精讲课堂(高教版2023·职业模块).pptx VIP
- 人教版《劳动教育》九年级 劳动项目二《三餐有营养》课件.pptx
- 2024年中考语文一轮复习(全国)(老师用)议论文写作(练习).pdf VIP
文档评论(0)