最近又有点忙,忙着找工作,忙着适应这个新环境。现在好了,上班两周周了,也适应过来了,又有时间安安静静的就行我们前面的学习了。今天这篇笔记,记录的就是函数的使用。下面这些代码基本上是理清楚了函数的额使用,但还有一块“闭包”的内容,后面我们单独写一块出来。
// 形参传递的过程中,由于没有写外部形参名称,第一个形参的外部形参名字可以省略,第二的的不可以省略
let zxtest = testString(1, zc: 2)
print(zxtest) // 返回值是一个元组的形式返回到,参数的传递和上面的注意点一样。
let zx = zxtestString(2, zc: 3)
print(zx) // 形参个数可变的函数
zxztestString(1,2,3,4) // 传入变量类型的形参,这里传入的值和里面的给它赋值是不一样的,传的 5 打印 出来是 3
zxzxztestString(5)
// 这里就是传入的形参形式是函数的形式,第一个我们是命名了外部形参名的,所以在传值得时候也就必须得体现。
zxzxzxtestString(zhanxgu: 2, zxsb: 3)
// 定义一个函数,形参名:形参类型 ——> 返回值的类型
func testString(zx: Int, zc:Int)->String
{ // if(zx>zc)
// {
// return "yes"
// }
// else
// {
// return "no"
// } // 一个三目运算符,和上面的逻辑是一样的,按这样鞋就显得你更专业,代码量是少,精炼。
return zx>zc ? "yes" : "no" } // 定义一个函数,它的返回值类型是多个已返回值的元组的形式。
func zxtestString(zx:Int ,zc:Int)->(String,String)
{ return zx > zc ? ("zhang","xu") :("cao","xi")
// 在一行上连续的声明必须加分割符 ; (这里的书写错误就是zx与后面的>之间没有空格) } // 定义形参个数可变的函数
func zxztestString(zx:Int...)
{ print(zx) } // 传入变量类型的形参
func zxzxztestString(var zx :Int)
{
zx = 3
print(zx) } // 函数传入的形参也是函数 ,zhanxgu 是一个外部形参名
func zxzxzxtestString ( zhanxgu zx:Int , zxsb:(Int))
{
zxsbd(3)
print("小旭旭")
} func zxsbd(zx:Int)
{ print(String(format: "========%d",zx)) }