Swift   发布时间:2022-03-31  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了swift语言的学习笔记四-2(对上一节有些遗留进行处理)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/30314359 转载请注明出处 如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号fengsh998来支持我,谢谢! 在上一节中有些问题还没有弄清,在这里自己写了一下,做了一下验证,并希望能给读者有所帮助。 看例子: 例子中包括 callBACk函数的声明与使用
作者:fengsh998
原文地址:http://blog.csdn.net/fengsh998/article/details/30314359
转载请注明出处
如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号fengsh998支持我,谢谢!


在上一节中有些问题还没有弄清,在这里自己写了一下,做了一下验证,并希望能给读者有所帮助。

看例子:

例子中包括

callBACk函数的声明与使用

函数作为形参进行传递

函数作为返回值

函数支持泛型,当然class也支持

  1. importFoundation
  2. typealiasPoint=(Int,int)
  3. letorigin:Point=(0,0)
  4. //初始化函数
  5. funcwillDoit(sender:CallBACkManager)
  6. {
  7. println("willDoitdefaulft.")
  8. }
  9. funcdidDoit(sender:CallBACkManager)
  10. {
  11. println("didDoitdefaulft.")
  12. }
  13. classCallBACkManager
  14. //声明两个函数变量
  15. varwilldoitcallBACk:(CallBACkManager)->()=willDoit
  16. vardiddoitcallBACk:(CallBACkManager)->()=didDoit
  17. varcallBACkName="Helloworld"
  18. init()
  19. funcTESTCall()
  20. self.willdoitcallBACk(self)
  21. callBACkName="resetdata"
  22. println("todosomething.")
  23. self.diddoitcallBACk(self)
  24. //函数地址作为形参传递
  25. functestparams(addfunc:(Int,int)->(int),instruction:string)->Bool
  26. println("3+5=\(addfunc(3,5)),第二个参数值为:\(instruction)")
  27. returntrue
  28. //函数作为返回值
  29. functestfunctionReturn(instruction:string)->(Int,int)->Int
  30. funcMultiplication(a:Int,b:int)->Int
  31. returna*b
  32. return@H_305_76@multiplication
  33. //自动闭包类型
  34. //调用simpleAssert(testnumber%2==0,"testnumberisn'tanevennumber.")
  35. funcsimpleAssert(condition:@auto_closure()->Bool,message:string){
  36. if!condition(){
  37. println(messagE)
  38. //可变参数
  39. funcunkNowParam(slist:string...)
  40. varret:string=""
  41. forusbinslist
  42. println(usb)
  43. ret+=(usb+",")
  44. //使用泛型
  45. //simpleMin(17,42)//整型参数
  46. //simpleMin(3.14159,2.71828)//浮点型
  47. funcsimpleMin<T:Comparable>(x:T,y:T)->T{
  48. ifx<y{
  49. returny
  50. returnx
  51. }

调用

@H_696_347@
    classViewController:UIViewController{
  1. funcwillcallBACk(callBACk:CallBACkManager)
  2. println("回调前结果\(callBACk.callBACkName)")
  3. funcdidcallBACk(callBACk:CallBACkManager)
  4. println("回调后结果\(callBACk.callBACkName)")
  5. funcadd(a:Int,b:int)->Int
  6. returna+b
  7. overridefuncviewDidLoad(){
  8. super.viewDidLoad()
  9. vartest=CallBACkManager()
  10. test.willdoitcallBACk=willcallBACk
  11. test.diddoitcallBACk=didcallBACk
  12. test.TESTCall()
  13. test.testparams(add,instruction:"测试函数作为传参")
  14. letfuncMulti=test.testfunctionReturn("返回函数地址")
  15. letret=funcMulti(5,5)
  16. println("5*5=\(ret)")
  17. return;}
  18. }

大佬总结

以上是大佬教程为你收集整理的swift语言的学习笔记四-2(对上一节有些遗留进行处理)全部内容,希望文章能够帮你解决swift语言的学习笔记四-2(对上一节有些遗留进行处理)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。