Swift2.0 函数学习笔记

最近又有点忙,忙着找工作,忙着适应这个新环境。现在好了,上班两周周了,也适应过来了,又有时间安安静静的就行我们前面的学习了。今天这篇笔记,记录的就是函数的使用。下面这些代码基本上是理清楚了函数的额使用,但还有一块“闭包”的内容,后面我们单独写一块出来。

       // 形参传递的过程中,由于没有写外部形参名称,第一个形参的外部形参名字可以省略,第二的的不可以省略 
        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))
    
    
}
原文地址:https://www.cnblogs.com/zhangxiaoxu/p/5230083.html