Swift基础-0006 【swift函数调用】
发布日期:2021-06-23 19:02:35 浏览次数:16 分类:技术文章

本文共 2679 字,大约阅读时间需要 8 分钟。

*swift函数调用

  • swift函数调用
  • swift函数嵌套
  • swift函数多态
//: case5 函数调用import UIKitvar str = "Hello, playground"//带一个参数一个返回值函数func sayName(name:String) ->String{    var say = "my name is "+name    return say}println(sayName("张三"))//多参数函数func mayArgs(name:String,old:Int) ->String{    return "my name is " + name + "old is \(old))"}println(mayArgs("李四",29))//无返回值无参数函数func method(){    println("world")}print("hello ")method()println()//多返回值函数//统计abc个数func manyArgs(name:String) ->(a:Int , b:Int , c:Int){    var A = 0 , B = 0, C = 0, D = 0    for str in name    {        switch String(str).lowercaseString        {            case "a":            A++            case "b":            B++            case "c":            C++        default:            D++        }    }    return (A,B,C)}let rt = manyArgs("basaaaae")println("base 这个字符串共含有\(rt.a)个a \(rt.b)个b  \(rt.c)个C ")//扩展参数的两种用法func kuoArgs(name n:String,old o:Int) ->String{    return "名叫:" + n + " " + "年龄" + String(o)}let str2 = kuoArgs(name:"张三",old:22)println("\(str2)")//函数的默认参数值处理func defaultArgs(name n:String = "张三",old o:Int = 31 )->String{    return "name is " + n + " and old is" + String(o)}println(defaultArgs(name:"李四"))//如果只给了一个参数则未给出的参数使用默认值//可变参数 类似于Javafunc otherArgs(name:String , old:Int , other:String...)->String{    var rt2 = "name is " + name + " old is " + String(old)    for str5 in other    {        rt2 += str5    }    return rt2}let str3 = otherArgs("李四",21, " 男"," 未婚"," 身体健康")println(str3)//保留函数体内对传入参数的修改func case1(inout name:String , old:Int)->String{    name = "喵小喵"    return "name is "+name+" old is " + String(old)}var name = "隔壁老王"println(case1(&name,21))println(name)//函数的多态var case2 :(inout String,Int)-> Stringvar case3 :(String,String...)->Stringfunc myCase2(inout name:String,old:Int)->String{    return "case2 \(name) \(String(old))"}func myCase3(var name:String,other:String...)->String{    var str9:String = ""    for str0 in other    {        str9 += str0    }    return name + str9}//初始化case2case2 = myCase2case3 = myCase3var name0 = "隔壁老王"println(case2(&name0 ,32))println(case3("你好","小明","你出去"))//函数调用func mycase4(case2:(inout String,Int)->String , str:String){    var name8 = ""    println(case2(&name,40))}mycase4(case2,"hell0")//函数嵌套func myCase5(flag:Bool ,m:Int ,n:Int)->Int{    func method1()->Int{
return m+n} func method2()->Int{
return m-n} return flag ? method1() : method2()}println(myCase5(true,11,22))println(myCase5(false,22,44))

控制台打印

my name is 张三my name is 李四old is 29)hello worldbase 这个字符串共含有5个a 1个b  0个C 名叫:张三 年龄22name is 李四 and old is31name is 李四 old is 21 男 未婚 身体健康name is 喵小喵 old is 21喵小喵case2 隔壁老王 32你好小明你出去case2 喵小喵 4033-22

图一

图二
图三
图四
图五

Author:ruanjianjiagou@163.com 欢迎交流

转载地址:https://blog.csdn.net/u014513456/article/details/45894985 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Linux 命令之 crontab 计划任务与自动同步系统时间
下一篇:Spring boot 2.x 注册拦截器HandlerInterceptor 与 自定义资源映射虚拟路径

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月06日 19时55分04秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

spring boot 与 Ant Design of Vue 实现新增角色(二十) 2019-04-27
spring boot 与 Ant Design of Vue 实现修改角色(二十一) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除角色(补二十一) 2019-04-27
spring boot 与 Ant Design of Vue 实现组织管理布局的实现(二十二) 2019-04-27
spring boot 与 Ant Design of Vue 实现左侧组织树(二十三) 2019-04-27
spring boot 与 Ant Design of Vue 实现新增组织(二十四) 2019-04-27
spring boot 与 Ant Design of Vue 实现修改组织(二十五) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除组织(二十六) 2019-04-27
spring boot 与 Ant Design of Vue 实现获取用户列表(二十七) 2019-04-27
spring boot 与 Ant Design of Vue 实现删除用户(三十) 2019-04-27
spring boot 与 Ant Design of Vue 鉴权体系获取用户信息的实现(三十二) 2019-04-27
Druid连接池实现自定义场景的多数据库的连接 2019-04-27
CentOs7命令行(静默)的方式安装oracle数据库 2019-04-27
基于VMware安装CentOs7的镜像 2019-04-27
PL/SQL数据库管理工具的使用 2019-04-27
带你玩转属于自己的spring-boot-starter系列(一) 2019-04-27
带你玩转属于自己自己的spring-boot-starter系列(二) 2019-04-27
带你玩转属于自己的spring-boot-starter系列(三) 2019-04-27
基于SnowFlake算法如何让分库分表中不同的ID落在同一个库的算法的实现 2019-04-27
基于springboot的ShardingSphere5.X的分库分表的解决方案之分表解决方案(一) 2019-04-27