美文网首页
(十二) [Swift]Swift中的函数

(十二) [Swift]Swift中的函数

作者: 修行猿 | 来源:发表于2016-08-08 07:28 被阅读11次

1.函数的返回值

(1) 返回单个返回值

func add(num1:Int,num2:Int) -> Int{
    return num1 + num2
}
let result1 = add(1,num2:2)
print(result1) //3

(2) 通过tuple返回多个返回值

func getPoint(x:Int,y:Int) -> (Int,Int){
    return (x,y)
}
print(getPoint(1, y: 2)) //"(1, 2)\n"

(3) 返回optional类型的返回值

func getNumFromStr(str:String) -> Int?{
    return Int(str)
}
var resultNum = getNumFromStr("123")
resultNum.dynamicType //Optional<Int>.Type

2.函数类型的变量

(1) 函数的类型是由参数信息和返回值信息组成

func add(num1:Int,num2:Int) -> Int{
    return num1 + num2
}
//add的类型为(Int,Int) -> Int

(2) 声明一个函数类型的变量

let func1 : (Int,Int) -> Int = add

3.函数类型的参数

func compare(param1:Int,param2:Int,compareFunc:(Int,Int) -> Bool) ->Bool{
    return compareFunc(param1,param2)
}
var compareResult = compare(1, param2: 2) { (p1, p2) -> Bool in
    return p1>p2
}
print(compareResult)

4.函数类型的返回值

func add(num1:Int,num2:Int) -> Int{
    return num1 + num2
}

func multi(num1:Int,num2:Int) -> Int{
    return num1 * num2
}

func whichOne(bool:Bool) -> (Int,Int) ->Int{
    return bool ? add : multi
}

print(whichOne(true)(1,2))  //打印3
print(whichOne(false)(1,2)) //打印2

5.typealias,为一个函数类型起别名

func add(num1:Int,num2:Int) -> Int{
    return num1 + num2
}

func multi(num1:Int,num2:Int) -> Int{
    return num1 * num2
}

typealias op = (Int,Int) -> Int

func whichOne(bool:Bool) -> op{
    return bool ? add : multi
}

print(whichOne(true)(1,2))  //打印3
print(whichOne(false)(1,2)) //打印2

6.内嵌函数

typealias op = (Int,Int) -> Int

func whichOne(bool:Bool) -> op{
    func add(num1:Int,num2:Int) -> Int{
        return num1 + num2
    }
    
    
    func multi(num1:Int,num2:Int) -> Int{
        return num1 * num2
    }
    return bool ? add : multi
}

相关文章

  • Swift中的标准函数

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

  • (十二) [Swift]Swift中的函数

    1.函数的返回值 (1) 返回单个返回值 (2) 通过tuple返回多个返回值 (3) 返回optional类型的...

  • #6 函数

    swift functions - 极客学院 swift的函数和JS的函数基本类似,有几点不同的是: swift中...

  • Swift超基础语法(函数篇)

    函数 定义函数的格式 Swift中的函数与OC中的方法比较相似,其格式如下: Swift中的函数相比于OC方法更为...

  • Swift基础语法09-- 函数

    前言 Swift中的函数和OC中的函数,还是有很大的改变,下面我们来简单的了解一下Swift中的函数 函数的格式 ...

  • Swift学习笔记(二)

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

  • 窥探 Swift 之 函数与闭包的应用实例

    一.Swift中的函数 1.函数的定义与使用 在介绍Swift中的函数之前,我想用Objective-C中的一个简...

  • Swift の 函数式编程

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

  • Pointer In Swift

    Manual Memery Managment In Swift Swift中的指针与C的对应关系 全局操作函数 ...

  • Swift-闭包

    Swift 闭包 函数 ()->() Swift 中的闭包和 Objective-C 中的 block 类似,闭包...

网友评论

      本文标题:(十二) [Swift]Swift中的函数

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