美文网首页
Swift3.0函数的闭包

Swift3.0函数的闭包

作者: 赵果果 | 来源:发表于2016-11-21 09:42 被阅读0次

import Foundation//闭包:闭包的本质就是匿名函数(没有名字的函数,就是一个能完成特定功能的代码块//求和的函数func sum(num1:Int, num2:Int) -> Int{    return num1 + num2}/*  (Int, Int) -> (Int) */let biBao:((Int, Int) -> (Int))biBao = {    (num1:Int,num2:Int)->(Int) in    return num1 + num2}//调用闭包let result = biBao(1,2)print(result)//无参数无返回值的闭包//func sayHello()->Void{//    print("hello")//}//()->(Void) 无参数无返回值的闭包的闭包类型let b1:(()->(Void)) = {    ()->(Void) in    print("无参数无返回值的闭包类型")    return print("提前结束函数")//提前结束一个函数  //print("123455")}b1()//无参数有返回值的闭包类型//func buyRedWiner() -> (Int) {//    return 1//}//() -> (Int)let b2:(() -> (Int)) = {    ()->(Int) in        return 10}print(b2())//有参数有返回值var b3:((Int,Int)->(Int)) = {    (n:Int, m:Int)->(Int) in    return n + m}print(b3(1,5))b3 = {    (a:Int, b:Int)->(Int) in    return a - b}print(b3(10,5))//b3求两个数积的代码块b3 = {    (a:Int, b:Int)->(Int) in    return a * b}print(b3(3, 5))//闭包类型的变量,不止能存储一个代码块,而是能存储和变量类型一致的所有代码块//有参数无返回值的闭包//比较两个数的最大值并把最大值输出的闭包//(Int,Int)->(Void)let b4:((Int,Int)->(Void)) = {    (num1:Int,num2:Int)->(Void) in    print (num1 > num2 ? num1 : num2)}b4(10,12)//排序var arr = ["zhangsan","lisi","yifeng","xiaobai","xiaofan"]//可变的数组两种排序方式都能使用,不可变的只能使用sorted方法//升//arr.sort()//print(arr)arr.sort{(str1:String,str2:String)->Bool in    //比较条件大于,得出的结果是降序    //比较条件小于,得出结果是升序    return str1 > str2}print(arr)//泛型(了解)func printContent(something:T){

print(something)

}

printContent(something: "123456")

printContent(something: 1)

printContent(something: 1.22)

相关文章

  • 9 闭包——《Swift3.0从入门到出家》

    9 闭包——《Swift3.0从入门到出家》 闭包 Swift语言中可以使用一块独立代码块替代函数的定义,称独立的...

  • 逃逸闭包(escaping) vs 非逃逸闭包(nonescap

    升级到Swift3.0后,需要明确指出逃逸闭包,可以帮助编译器进行优化 逃逸闭包:可以逃离出所在函数执行的非逃逸闭...

  • swift中GCD的使用详情

    想看swift3.0使用GCD,请点击GCD详解 想看swift3.0闭包的使用和介绍,请点击Swift版闭包使用...

  • 闭包的逃逸

    在swift3.0以前,一个函数的参数的闭包的捕捉策略是escaping,如果是一个非逃逸闭包,需要显示的添加声明...

  • Swift3.0函数的闭包

    import Foundation//闭包:闭包的本质就是匿名函数(没有名字的函数,就是一个能完成特定功能的代码块...

  • 如何理解闭包?

    1、定义: 嵌套在函数作用域中的函数,称为闭包函数。该作用域称为闭包环境。通过闭包函数可以访问闭包函数所在函数作用...

  • 关于逃逸闭包

    逃逸闭包:当函数执行结束后,才去调用函数内部的闭包,叫做逃逸闭包非逃逸闭包当函数执行过程中,执行的函数内部的闭包,...

  • 3.逃逸闭包,非逃逸闭包

    逃逸闭包:当函数执行结束后,才去调用函数内部的闭包,叫做逃逸闭包非逃逸闭包:当函数执行过程中,执行的函数内部的闭包...

  • (9) python之闭包

    闭包闭包 = 函数 + 环境变量(函数定义的时候) 一个最简单的闭包 闭包不受外部变量影响 非闭包 闭包 闭包 只...

  • JS的闭包

    1.闭包的概念 闭包函数:声明在一个函数中的函数,叫做闭包函数。闭包:内部函数总是可以访问其所在的外部函数中声明的...

网友评论

      本文标题: Swift3.0函数的闭包

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