zoukankan      html  css  js  c++  java
  • swift基础语法(18- 函数类型)

    函数类型:
    类似于C语言的指向函数的指针
    类似于OC语言的block
    函数类型是由函数的参数类型和返回值类型组成的
     
    这两个函数的类型是 (Int, Int) -> Int
    func sum(a: Int, b: Int) ->Int
    {
        return a + b;
    }

    func sub(a: Int, b: Int) ->Int
    {
        return a - b;
    }
     
    可以利用函数类型定义函数变量和常量
    var funcP:(Int, Int) -> Int = sum
    funcP = sub
    print(funcP(10, 20))
    输出结果: -10
     
     
     
    func sum(a: Int, b: Int) ->Int
    {
        return a + b;
    }

    func sub(a: Int, b: Int) ->Int
    {
        return a - b;
    }
     
    函数类型可以作为函数的参数
    func calFunc(a: Int, b: Int ,Option:(Int, Int) -> Int) ->Int
    {
        return Option(a, b)
    }
    print(calFunc(10, b: 20, Option: sum))
    print(calFunc(10, b: 20, Option: sub))
    输出结果:
    30
    -10
     
     
    函数类型可以作为函数返回值
    func max(a: Int, b: Int) -> Int
    {
        return a > b ? a : b
    }
    func min(a: Int, b: Int) -> Int
    {
        return a < b ? a : b
    }

    func chooseFunc(getMax:Bool) -> (Int , Int) -> Int
    {
        return getMax ? max : min
    }

    var funcP2:(Int , Int) -> Int = chooseFunc(false)
    print(funcP2(10, 20))
    输出结果: 10
     
     
     
     
     
  • 相关阅读:
    第二阶段个人总结7
    第二阶段个人总结6
    第十七周进度报告
    个人总结
    十六周进度报告
    人月神话阅读笔记3
    十五周进度报告
    十四周进度报告
    人月神话阅读笔记2
    购买图书
  • 原文地址:https://www.cnblogs.com/jordanYang/p/5378382.html
Copyright © 2011-2022 走看看