1.定义一个函数以及调用

//一,定义一个无参无返回值函数
func fun1(){
print("this is first function")
}
fun1()

2.定义一个有参有返回值的函数

func fun2(a:Int) ->Int{
print("this is second function")
return a
}
//函数的调用
fun2(a: )

解析:函数的参数放在函数名后的括号中,多个参数用逗号隔开,返回值类型用连接符和一个右尖括号指明(->)

3.调用函数必须指明参数名且参数顺序不能改变

func add1(firstNum:Int,addWithNum:Int) ->Int{
return firstNum+addWithNum
}
//错误案例一、add1(2,3)调用函数必须指明参数名
//错误案例二、add1(addWithNum: 4 ,firstNum:
add1(firstNum: , addWithNum: )

4.在使用下划线在调用函数时省略指定参数名时,调用时则必须省略参数名

func add2(_firstNum:Int,_addWithNum:Int) ->Int{
return firstNum+addWithNum
}
//错误案例add2(2, addWithNum: 4)
add2(, )

5.定义函数时指定外部参数

func add3(a firstNum:Int,b addWithNum:Int) ->Int{
return firstNum + addWithNum
}
add3(a: , b: )//调用时则指定外部参数名

6.声明外部参数时,不能在函数内使用外部参数进行运算,同时在调用时也不能使用内部参数赋值

//错误案例
func add4(a firstNum:Int,b addWithNum:Int) ->Int{
return a + b值
}
add4(firstNum: , addWithNum: )

7.在使用外部参数的情况下,不能使用下划线省略参数

//错误案例
func add5(_ a firstNum:Int,b addWithNum:Int) ->Int{
return firstNum + addWithNum
}

8.在定义一个带参的函数时可以给参数设置一个默认值

func add5(firstNum:Int,addWithNum:Int = ) ->Int{
return firstNum+addWithNum
} add5(firstNum:) //得到结果6
add5(firstNum: ,addWithNum: )//得到结果10

学习swift从青铜到王者之Swift语言函数05的更多相关文章

  1. 学习swift从青铜到王者之swift属性09

    1.结构体常量和类常量的存储属性 let p1 = Person1() //p1.age = 88 不允许修改 //p11.name = "yhx1" 不允许修改 var p11 ...

  2. 学习swift从青铜到王者之swift闭包06

    语法表达式 一般形式:{ (parameters) -> returnType in statements } 这里的参数(parameters),可以是in-out(输入输出参数),但不能设定 ...

  3. 学习swift从青铜到王者之swift结构体和类08

    定义 // 定义类 class StudentC{ } // 定义结构体 struct StudentS{ } 定义存储属性 // 定义类 class StudentC{ var name:Strin ...

  4. 学习swift从青铜到王者之swift枚举07

    空枚举 //空枚举 enum SomeEnumeration { // enumeration definition goes here } 枚举基本类型 //枚举基本类型 enum CompassP ...

  5. 学习swift从青铜到王者之Swift控制语句04

    1 if语句基本用法 if boolean_expression { /* 如果布尔表达式为真将执行的语句 */ } 如果布尔表达式为 true,则 if 语句内的代码块将被执行.如果布尔表达式为 f ...

  6. 学习swift从青铜到王者之Swift集合数据类型03

    1 数组的定义 var array1 = [,,,] var array2: Array = [,,,] var array3: Array<Int> = [,,,] var array4 ...

  7. 学习swift从青铜到王者之swift基础部分01

    1.1 变量和常量 var 变量名称 = 值(var可以修改) let 常量名称 = 值(let不可以修改) 1.2 基本数据类型 整数类型和小数类型 两种基本数据类型不可以进行隐式转换 var in ...

  8. 学习swift从青铜到王者之字符串和运算符02

    1 字符和字符串初步  var c :Character = "a" 2 构造字符串  let str1 = "hello" let str2 = " ...

  9. 学习Android从青铜到王者之第一天

    1.Android四层架构 一.Linux Kernel 二.Libraries和Android Runtime 三.Application Framework 四.Applications 一.Li ...

随机推荐

  1. Urlrewritefilte

    Urlrewritefilter是通过filter的形式,过滤所有的请求,然后再根据配置文件来转换成真正要访问的URL. 好处是隐藏真正的URL和美化提供给客户的URL. 比如,你的首页是www.** ...

  2. 禁用DRM

    10G: alter system set "_gc_policy_time"=0 scope=spfile sid='*'; alter system set "_gc ...

  3. Python3简明教程(六)—— 数据结构

    简单的来说,数据结构(data structure)是计算机中存储.组织数据的方式.比如我们之前使用过的列表就是一种数据结构,在这里我们还会深入学习它.之前也有简单的介绍. 列表 >>&g ...

  4. 判断请求是否为ajax

    判断请求是否为ajax 转载:http://www.cnblogs.com/tony-jingzhou/archive/2012/07/30/2615612.html x-requested-with ...

  5. django 模板中{%for%}的使用

    1.{%for athlete in list reversed%}  reversed用于反向迭代 2.for 标签 支持一个可选的 empty 变量 3.forloop 模板变量 4.forloo ...

  6. 事物的四大特性(acid)

    如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一 ...

  7. HTML页面中5种超酷的伪类选择器:hover效果

    想在自己的网站中应用超酷的hover效果吗?也许你可以从如下的这些实例中获得一些灵感,如果你喜欢这些效果,也可以直接拷贝代码并应用到你的站点. 给平淡的站点带来活力 hover效果能给网页增加一些动态 ...

  8. [CF] 948A Protect Sheep

    A. Protect Sheep time limit per test1 second memory limit per test256 megabytes inputstandard input ...

  9. Nginx Location和Rewrite总结

    Nginx 版本:nginx/1.10.3 (Ubuntu) Location 部分: 第一步:创建Nginx 虚拟主机 Nginx 安装成功安装并且可以运行之后,在 /etc/nginx 目录下创建 ...

  10. 使用js获取页面的各种高度

    使用js获取相关高度: 获取网页被滚动条卷去的高度——兼容写法: scrollHeight = documen.body.scrollTop || document.documentElement.s ...