Swift初见Swift函数
Posted weasleyqi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift初见Swift函数相关的知识,希望对你有一定的参考价值。
在任何语言中,函数都是非常重要的,今天我们就来初步的学习下Swift中的函数。
1、Swift函数默认参数:
①、可以放在函数的任意位置;
②、外部名称与内部名称一致;
③、调用的时候可以不写;
④、在函数定义时传入参数里定义好。
func joinString(s1: String , toString s2: String , joiner s3 : String = "*") -> String
return s1 + s3 + s2
let str = joinString("Hello", toString: "World", joiner: "#")
println(str)
从上面的代码可以看出,joiner是定义好的一个默认参数,我们在调用的时候可以写也可以不写,看下面的代码:
func joinString(s1: String , toString s2: String , joiner : String = "*") -> String
return s1 + joiner + s2
let str = joinString("Hello", toString: "World", joiner: "#")
println(str)
此时的joiner既是外部参数也是内部参数,相当于我们在joiner前面加了#号。
2、Swift输入输出函数(inout)
func swap(var a: Int, var b: Int)
let t = a
a = b
b = t
var x = 10
var y = 19
swap(x, y)
println("\\(x) , \\(y)")
从上面的代码输出可以看出,x和y的值实际并没有改变,这就是我们认识的一个误区,swap的参数实际是实参,就相当于我们输入了2个整数而已,而实际上x和y的值并没有被改变,那如果我们需要改变x和y的值,那我们就该传入x和y的地址。
func swap(inout a: Int, inout b: Int)
let t = a
a = b
b = t
var x = 10
var y = 19
swap(&x, &y)
println("\\(x) , \\(y)")
从上面的代码可以看出,当我们需要改变变量的实际值得实惠,我们在函数调用的时候就应该使用输入输出函数(inout),在调用函数的时候也要加上&符号。
结论:当我们需要在函数内部修改函数外部值得时候,我们需要在函数形参位置改为inout参数,调用函数的时候要取地址。
以上是关于Swift初见Swift函数的主要内容,如果未能解决你的问题,请参考以下文章