函数

作者: 大写的空气 | 来源:发表于2020-05-08 15:13 被阅读0次
    函数类型作为函数参数
    func sum(v1: Int, v2: Int) -> Int {
         return v1 + v2
     }
     
     func difference(v1: Int, v2: Int) -> Int {
          return v1 - v2
     }
     
     func printResult(_ mathFn:(Int,Int) -> Int, _ a: Int, _ b: Int) {
         print("Result: \(mathFn(a,b))")
     }
     
     printResult(sum, 5, 2) // Result: 7
     printResult(difference, 5, 2) // Result: 3
    
    函数类型作为函数返回值
    func next(_ input: Int) -> Int {
        return input + 1
     }
     
     func previous(_ input: Int) -> Int {
         return input - 1
     }
     
     func forward(_ forward: Bool) -> (Int) -> Int {
         return forward ? next : previous
     }
     
     forward(true)(3)  // 4
     forward(false)(3) // 2
    
    • 返回值是函数类型的函数,叫做高阶函数(Higher-Order Function)
    • typealias用来给类型起别名,如typealias Byte = Int8
    typealias Date = (year: Int, momth: Int, day: Int)
     
     func test(_ date: Date) {
         print(date.0)  //2011
         print(date.year) //2011
     }
     test((2011,9,10))
    

    相关文章

      网友评论

          本文标题:函数

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