美文网首页
Swift5.1函数

Swift5.1函数

作者: 037e3257fa3b | 来源:发表于2020-09-09 16:14 被阅读0次

6.函数

  • 多重返回值函数:用元组(tuple)类型让多个值作为一个复合值从函数中返回

      func minMax(array: [Int]) -> (min: Int, max: Int)? { 
              if array.isEmpty { return nil }
              var currentMin = array[0]
          var currentMax = array[0]
          for value in array[1..<array.count] {
              if value < currentMin { 
                  currentMin = value
              } else if value > currentMax { 
                  currentMax = value
              }
          }
          return (currentMin, currentMax)
    }
    
  • 函数参数标签和参数名称: 每个函数参数都有⼀一个参数标签(argument label)以及一个参数名(parameter name)。参数标签在调⽤用函数的时候使用;调用的时候需要将函数的参数标签写在对应的参数前面。参数名称在函数的实现中使用。默认情况下,函数参数使用参数名称来作为它们的参数标签。

  • 忽略参数标签:如果你不希望为某个参数添加一个标签,可以使用一个下划线( _ )来代替一个明确的参数标签。

  • 默认参数值:你可以在函数体中通过给参数赋值来为任意一个参数定义默认值(Deafult Value)。当默认值被定义后,调⽤这个函数时可以忽略这个参数。

  • 可变参数:一个可变参数(variadic parameter)可以接受零个或多个值。函数调用时,你可以⽤可变参数来指定函数参数可以被传⼊不确定数量的输入值。通过在变量类型名后面加入( ... )的方式来定义可变参数。

  • 输入输出参数:函数参数默认是常量。定义一个输入输出参数时,在参数定义前加 inout 关键字。

    func swapTwoInts(_ a: inout Int, _ b: inout Int) { let temporaryA = a
      a=b
      b = temporaryA
    }
    输⼊输出参数不能有默认值,而且可变参数不能用 inout 标记。
    
  • 函数类型作为返回值,嵌套函数

     func chooseStepFunction(backward: Bool) -> (Int) -> Int { 
      func stepForward(input: Int) -> Int { return input + 1 } 
      func stepBackward(input: Int) -> Int { return input - 1 } 
      return backward ? stepBackward : stepForward
    }
    var currentValue = -4
    let moveNearerToZero = chooseStepFunction(backward: currentValue > 0)
    while currentValue != 0 {
      print("\(currentValue)... ")
      currentValue = moveNearerToZero(currentValue) 
    }
    print("zero!") 
    // -4...
    // -3...
    // -2...
    // -1... // zero!
     
    

相关文章

  • Swift5.1函数

    6.函数 多重返回值函数:用元组(tuple)类型让多个值作为一个复合值从函数中返回 func minMax(a...

  • Swift5.1——前言

    主要是针对Swift5.1,基础语法,和内部剖析。 基础语法 基础语法 流程控制 函数 枚举 可选项 为什么选择S...

  • Swift5.1 - 函数(3)

    1. 函数定义 无返回值; 有返回值(使用 -> 来定义返回); 行参默认是let,不能为var; 隐式返回(只能...

  • 关于SwiftUI,Swift5.1之后的小感

    Swift5.1之前是一门语言,Swift5.1之后是另外一门语言,作为一个从Swift2.0开始就在持续学习这么...

  • [Swift5.1] 3-函数

    函数定义 形参默认是let,也只能是let 无返回值 返回值()实质是空元组 隐式返回(Implicit Retu...

  • Swift5.1基础

    github:https://github.com/w0shiliyang/Swift5.1

  • UINavigationController中UIViewCon

    运行环境:xcode11,swift5.1 在UINavigationController 重写pushViewC...

  • Swift系统视频学习

    1、swift5.1基础语法:https://docs.swift.org/swift-book/Language...

  • Swift5.1学习随笔之函数func

    Swift中的函数用func关键字定义 举个? 无返回值的函数 有3中表达写法 隐式返回 如果整个函数体是一个单一...

  • [Swift5.1] 26-函数式编程

    Array的常见操作 arr.map() : 遍历数组每一个元素, 每遍历一个元素调用一次闭包,将元素传入闭包,闭...

网友评论

      本文标题:Swift5.1函数

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