美文网首页
swift 4 函数

swift 4 函数

作者: 艺术农 | 来源:发表于2018-05-31 15:20 被阅读173次
  • parameter和argument的区别

Note: Take care not to confuse the terms “parameter” and “argument”. A function declares its parameters in its parameter list. When you call a function, you provide values as arguments for the functions parameters.

parameter是函数的形参,argument是函数调用时的实参。

  • 函数格式
    函数的定义要像读一条句子,例如下面:

Print multiple of multiplier 4 and value 2

func printMultipleOf(multiplier: Int, andValue: Int) {
  print("\(multiplier) * \(andValue) = \(multiplier * andValue)")
}
printMultipleOf(multiplier: 4, andValue: 2)
  • 进一步优化

Print multiple of multiplier 4 and 2

func printMultipleOf(multiplier: Int, and value: Int) {
  print("\(multiplier) * \(value) = \(multiplier * value)")
}
printMultipleOf(multiplier: 4, and: 2)
  • 如果你不想要函数在调用时显示参数的名字(下划线)
func printMultipleOf(_ multiplier: Int, and value: Int) {
  print("\(multiplier) * \(value) = \(multiplier * value)")
}
printMultipleOf(4, and: 2)
func printMultipleOf(_ multiplier: Int, _ value: Int) {
  print("\(multiplier) * \(value) = \(multiplier * value)")
}
printMultipleOf(4, 2)
  • 给形参添加默认值
func printMultipleOf(_ multiplier: Int, _ value: Int = 1) {
  print("\(multiplier) * \(value) = \(multiplier * value)")
}
printMultipleOf(4)
  • 函数的返回值(箭头)
func multiply(_ number: Int, by multiplier: Int) -> Int {
  return number * multiplier
}
let result = multiply(4, by: 2)
func multiplyAndDivide(_ number: Int, by factor: Int)
                   -> (product: Int, quotient: Int) {
  return (number * factor, number / factor)
}
let results = multiplyAndDivide(4, by: 2)
let product = results.product
let quotient = results.quotient
  • 传值和传址
    默认swift的形参是let类型的常量,所以我们不能作如下操作。
func incrementAndPrint(_ value: Int) {
  value += 1
  print(value)
}

报错

Left side of mutating operator isn't mutable: 'value' is a 'let' constant

  • inout(copy-in copy-out)
func incrementAndPrint(_ value: inout Int) {
  value += 1
  print(value)
}

inout表明要传址了,我们要在调用的时候做点小修改(取地址符是时候出场了)

var value = 5
incrementAndPrint(&value)
print(value)
  • 函数作为参数
func add(_ a: Int, _ b: Int) -> Int {
  return a + b
}
func printResult(_ function: (Int, Int) -> Int, _ a: Int, _ b: Int) {
  let result = function(a, b)
  print(result)
}
printResult(add, 4, 2)
  • 函数从没返回值(Never关键字)
func noReturn() -> Never {
    while true {
        
    }
}
  • stride函数介绍
for index in stride(from: 10, to: 22, by: 4) {
  print(index)
}
// prints 10, 14, 18

for index in stride(from: 10, through: 22, by: 4) {
  print(index)
}
// prints 10, 14, 18, and 22

相关文章

  • swift 4 函数

    parameter和argument的区别 Note: Take care not to confuse the ...

  • Swift学习笔记(二)

    Swift函数 Swift函数包含参数类型和返回值类型 函数定义 Swift使用关键字func定义函数。 函数定义...

  • Swift中的标准函数

    Swift中的标准函数 Swift中的标准函数

  • Swift の 函数式编程

    Swift の 函数式编程 Swift の 函数式编程

  • Swift4-函数

    1.函数是一个独立的代码块,用来执行特定的任务。2.定义 3.没有定义返回类型的函数实际上会返回一个特殊的类型 V...

  • Swift4 函数

    很多文章里都提及函数在Swift中一等公民,你是怎么认为的呢?我也不太懂,浅薄的印象就是函数在Swift中也是一种...

  • Swift散记4 函数

    func <#name#> (参数名:参数类型 , 参数名:参数类型) - > 返回值{函数内容return} 函...

  • 4Swift - 函数

    4.1声明一个函数

  • 10.函数(function)

    函数 kotlin_函数 swift_函数

  • swift 函数

    Swift 函数 函数声明: 告诉编译器函数的名字,返回类型及参数。 函数定义: 提供了函数的实体。Swift 函...

网友评论

      本文标题:swift 4 函数

      本文链接:https://www.haomeiwen.com/subject/whofsftx.html