美文网首页梦想者程序员的故事程序员
【iOS】Swift之函数闭包,类似Objective-c中的B

【iOS】Swift之函数闭包,类似Objective-c中的B

作者: 独酌丿红颜 | 来源:发表于2015-12-18 15:55 被阅读528次

前言

  • 1.闭包是功能性子包含模块,可以在代码中被传递和使用。在Swift中的闭包与C和Obective-C 中的block 比较相似,通常我们这么使用的。

  • 2.闭包的第一种形式: 全局函数是一个有名字但不会捕获任何的的闭包,

{ 
(参数 : 类型) - > 返回类型 in
        执行方法
        return 返回类型;

 let arr = GetList( [1,2,3,4]), {(s:int) in return s>2} )
        println(arr)
}
  • 3.上面的代码可以看出,{(s:int) in return s>2}就是一个闭包的实现。GetList参数Pre:(int)->Bool 是一个函数,没有实现,在调用的时候传人闭包 {(s:int) in return s>2} 来实现具体的算法,{(s:int) in return s>2}闭包参数为整形,返回值为布尔类型;

示例

  • 1.跟在OC当中使用一样,我们的首先定义一个Block 类型,这里是定义一个闭包类型;
  • 2.声明一个block变量,同样的这里定义一个闭包函数变量;
///  这是一个函数闭包变量
typealias  myfunction = (SXstr:NSString) ->Void;
//  定义函数变量
var myBlock = myfunction?()
  • 3.这里示例在一个点击事件中,回调一个字符串,(SXstr: "你好!")作为示例
 /**
     在一个点击事件中传递闭包函数的变量:
     */
    func Tap()->Void
    {
       //值传递字符串
        myBlock!(SXstr: "你好!")
        self .dismissViewControllerAnimated(true, completion: nil)
    }
  • 4.函数作为值调用闭包函数。
    func Long(Block:myfunction)->Void
    {
        myBlock = Block;
    }
  • 5.调用闭包函数
  // 调用闭包函数
        myVC.Long { (SXstr) -> Void in
          
        print(SXstr)
           
   }

相关文章

  • Swift-闭包

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

  • 【iOS】Swift之函数闭包,类似Objective-c中的B

    前言 1.闭包是功能性子包含模块,可以在代码中被传递和使用。在Swift中的闭包与C和Obective-C 中的b...

  • 05-Swift闭包(Closures)

    * 闭包 是自包含的函数代码块,可以在代码中被传递和使用。swift中的闭包和Objective-C中的代码块(b...

  • swift4 闭包

    swift 闭包 闭包:swift 中 函数是闭包的一种类似于oc的闭包闭包表达式(匿名函数) -- 能够捕获上下...

  • Swift闭包、闭包简写、尾随闭包、逃逸闭包、自动闭包

    闭包介绍 Swift闭包和Objective-C中的Block很类似,是一段自包含的函数代码块,可以在代码中使用和...

  • Swift教程之闭包

    闭包 Swift的闭包类型类似于C和Objective-C中的块以及其他编程语言的Lambdas。 闭包可捕获并存...

  • Swift5.0比较重要的语法点归纳(四)

    闭包 闭包是自包含的函数代码块,可以在代码中被传递和使用。Swift 中的闭包与 C 和 Objective-C ...

  • swift 闭包

    闭包 闭包是自包含的函数代码块,可以在代码中被传递和使用。Swift 中的闭包与 C 和 Objective-C ...

  • Swift - 闭包

    闭包 闭包是自包含的函数代码块,可以在代码中被传递和使用。Swift 中的闭包与 C 和 Objective-C ...

  • Swift基础(七)闭包

    闭包 闭包是自包含的函数代码块,可以在代码中被传递和使用。Swift 中的闭包与 C 和 Objective-C ...

网友评论

本文标题:【iOS】Swift之函数闭包,类似Objective-c中的B

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