Swift的函数与函数指针、闭包Closure等相关内容介绍
来源:互联网 发布:优化教学体验成功论文 编辑:程序博客网 时间:2024/05/22 04:35
<span style="font-size:24px;">//函数//demo1 无参数类型func testConcat(){ println("测试函数");}testConcat()//调用demo1//demo2 多参数,一个返回值/* 函数以func开头,表示一个函数 v1表示参数,String参数类型 ->返回值类型String*/func testConcats(v1:String,v2:String) ->String{ return "\(v1) and \(v2)";}//函数参数含有标签func testConcatAndMark(v1:String,AndValue v2:String,AndNumber v3:String)->String{ return "\(v1),\(v2),\(v3)"}//测试函数func testFunction(){ let v = testConcats("hello", "world"); println(v); let v2 = testConcatAndMark("david", AndValue: "dream", AndNumber: "good"); println(v2)}testFunction();//函数返回多值func getInfo()->(String,String,Int){ return ("david","dream",100);}let (v1,v2,v3)=getInfo();println("v1=\(v1),v2=\(v2),v3=\(v3)");//函数嵌套函数func testFunctionInFunction()->Int{ var y = 10; func add(){ y+=5; } add(); return y;}let v6 = testFunctionInFunction();//*******************************//函数指针 *****五星难度/* 返回值是(Int->Int),是个函数地址 第一个int是参数类型,第二个int是返回值*/func getFuncPointer()->(Int->Int) { func addOne(num:Int)->Int{ return num+1; } return addOne;//返回一个函数 地址}var funPointer = getFuncPointer();//funPointer是个函数指针var v7 = funPointer(100);//函数的形式调用func get()->(Int->String){ func post(count:Int)->String{ if count>50{ return "success"; }else{ return "failed" } } return post;}let v8 = get();//v8拿到的是get()函数的地址let v9 = v8(58);//v9拿到的是get函数的返回值//函数指针/地址作为参数,函数作为参数传给函数,函数的传递</span>
<span style="font-size:24px;"></span>
<span style="font-size:24px;">//闭包是难点,闭包的作用主要是函数与函数之间的沟通,有点像Block</span>
<span style="font-size:24px;"></span><pre name="code" class="objc">//(num:Int)->Bool闭包参数类型func hasColsureMatch(arr:Int[],value:Int,cb:(num:Int)->Bool){ for item in arr{ if cb(item){ return true; } } return false;}var ar = [20,9.100,34,89,39];var v1 = hasClosureMatch(arr,40,{ (num:Int) -> Bool in return num >= 40;});println("v1 is \(v1)");
0 0
- Swift的函数与函数指针、闭包Closure等相关内容介绍
- C++函数指针相关内容介绍
- 匿名函数与闭包(closure)
- javascript 闭包(closure) 与匿名函数的this
- JavaScript函数闭包(closure) 的理解
- swift的函数与闭包
- closure function闭包函数
- Swift闭包与函数
- 函数与闭包(Swift)
- Swift 函数与闭包
- swift closure 闭包
- swift 闭包(closure)
- 匿名函数与闭包(Anonymous Function and Closure)
- php的闭包(Closure)也就是匿名函数。
- PHP 闭包函数及Closure对象的总结
- php的闭包(Closure)匿名函数用法详解
- 闭包(Closure)和匿名函数
- 函数编程之闭包漫谈(Closure)
- strace命令 系统调用
- Mac电脑怎么显示隐藏文件
- C++的开源跨平台日志库glog学习研究(二)--宏的使用
- 链表与二级指针的笔记
- [php] Thinkphp 联表查询
- Swift的函数与函数指针、闭包Closure等相关内容介绍
- 终端控制台笔记
- c#调用Restful API
- new delete malloc free的区别
- 谷歌面试题:数组元素移动交叉
- Adaptor&Decorator&Facade模式分析
- 九度OJ-题目1370:数组中出现次数超过一半的数字
- HelloWorld
- Android自定义控件——3D画廊和图像矩阵