swift语法 →函数

Swift4 学习之路,从入门语法   →进阶  →设计模式  →UIKit   →高级  →实战主目录:点击这里

函数应该都不陌生,个人理解就是一个独立的代码块,用于独立运算或者独立处理某一件事情,函数的类型包含有参无参 函数主要包含:函数声明 函数名 参数 返回值 以大括号中的函数体这几个部分,具体看一下

 

无参函数

   一样的函数, 都是无参函数,返回值为空的样式可以以下二选其一

 

func exampleOfFunction() ->Void{
    print("无参、无返回值 函数")
}

func exampleOfFunction(){
    print("无参、无返回值 函数")
}

exampleOfFunction1()  //调用

 

 

有参函数 

 

   正常的参数在函数中不能直接就该它的值,否则编译器会报错。


// 有参 无返回值函数
func exampleOfFunction2(paramet:String){
    // paramet = "hello"   参数不能直接修改,编译会报错
    print(paramet)

}

exampleOfFunction2(paramet:"无参、无返回值 函数")  //调用

// 有参 有返回值函数
func exampleOfFunction(paramet:String) ->String{
    let addString = "  world"
    return paramet+addString
}

exampleOfFunction(paramet: "hello")

 

  在swift中 函数可以作为一个函数的参数或者返回值


 


func plus (a:Int,b:Int)-> Int{
     return a+b
}

func mult (a:Int,b:Int)-> Int{
    return a*b
}

func someFuncyion(parameter:(Int,Int) -> Int,a:Int,b:Int){
    // parameter:(Int,Int) -> Int   本身是一个函数,两个入参和一个返回值
    // 整体来看就是 someFuncyion 是一个有三个参数的无返回值函数  参数一是函数  参数二 int   参数三 int
    print("运算结果 \(parameter(a,b))")
}

someFuncyion(parameter: plus, a: 3, b: 4)

someFuncyion(parameter: mult, a: 3, b: 4)

   1.当不能确定调用函数的参数的具体数量时, 需使用可变参数

 

   2.一个函数中只能有一个可变参数


 


func arithmeticMean(numbers:Double...)-> Double{
    var total: Double = 0
    for number in numbers{
        total+=number
    }
    return total/Double(numbers.count)
}

print(arithmeticMean(numbers: 1,2,3))

print(arithmeticMean(numbers: 1,2,3,4,5))

     上边说道通常函数中不能直接修改参数的值, 如果要修改? 那么必须在参数的类型前加关键字 "inout"。 称之为输入输出函数。 并且在调用的时候必须要使用一个&变量去掉用,不能使用常量或者字面量。因为这些量是不能被修改的

 

 

func iWantUpdateName(name: inout String){
    name = "NBA"
    print(name)
}

var strppp = "CBA"
iWantUpdateName(name:&strppp)  // 调用的时候只能以一个变量去调用,应为要保证他可以被修改。 用其他的话是不能被修改的



 

 输出: NBA

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值