函数和闭包解读.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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

您可能关注的文档

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档