swift简单学习之函数(func)

1:函数  --常量参数

复制代码
  func  函数名( 参数变量:类型 ,参数变量:类型...){}
    说明: 
        1: func 是函数关键字
        2:{} 函数体
        3: 参数变量是默认常量类型,不能在函数函数体里面直接修改
        即 func A (value:String)  与 func A (let value:String)写法是相同的,即value 是常量。

复制代码

例子

复制代码
/*
1: func 函数关键字
2:两个参数变量  value 和value1都是常量 不能修改
3:SayHello("hello","swift") 调用函数的方法
*/

func  SayHello(value :String,value1:String){
    var str = value + " " +  value1
    println(str)
}

SayHello("hello","swift")

运行结果

hello swift

注意点:
----------------------错误写法--------------
func  SayHello(value :String,value1:String){
   value = "AA" //错误写法 在函数中参数变量默认是常量类型不能修改
}
复制代码

2:函数  --变量参数

  func 函数名( var  参数变量 : 类型,... ) {}
    说明 
      1: func 函数关键字
      2: var 参数变量 :类型   表示参数变量是可变变量,不是常量,可以任意修改

例子

复制代码
func  SayHello(var value :String){
    value = "AA" //value  是被var 修改,value是可变变量
   println(value)
}

SayHello("hello")

运行结果
AA
复制代码

3:函数 --参数默认值

func  函数名(参数值 :类型=默认值){}
    说明 
1:func是函数的关键字
2:如果参数值,不赋值,参数值就采用默认值

例子

复制代码
func SayHello(value:String = "AA"){
    println("value=\(value)")
}

SayHello(value:"10") //带参数
SayHello()//不带参赛

运行结果
value=10
value=AA
复制代码

 三:函数 --可变参数

    func 函数名(参数名 类型...){}
    说明 :
     参数名 类型... 说明   该参数可以接触N个参数。

例子

复制代码
func SayHello(values :Double...){
    for temp in values{
        println("temp=\(temp)")
    }
    
}

SayHello(1.1,1.2,1.3)

运行结果
temp=1.1
temp=1.2
temp=1.3
复制代码

4:函数 --外部参数名

复制代码
 func  函数名 (参数变量:类型 ,参数说明  参数变量:类型)
  说明: 
     1:函数中的第一个不需要参数说明
     2:参数说明 + 参数名 : 类型 ,构成一个参数
     调用方法
      函数名(参数值,参数说明:参数值,参数说明:参数值....)
复制代码

例子

复制代码
// joinStr value1 : String 是一个参数

func SayHello(value : String, joinStr value1 : String){
    var  str = value + value1
    println("str= \(str)")
}

SayHello ("hello ",joinStr:"Swift")

运行结果
str=hello Swift
复制代码

5:函数 输入输出参数

func 函数名(inout 函数变量 类型)

    说明:
     inout 修辞的变量 函数内部可以直接修改,其外部可以获取到 

例子:

复制代码
func SayHello (inout value:String){
    value = "Hello Swift"
}

var str = "hello"
SayHello(&str)  //此时传递 字符串的地址
println(str)

运行结果
Hello Swift
复制代码

6:函数返回值 --元组

复制代码
/*
 func 函数名 ( 参数变量 : 类型 ,参数说明  参数变量 :类型)-> 类型

1:func 函数关键字
2: ->类型 ,返回类型
*/
复制代码

例子

复制代码
//------------------------返回 元组
func SayHello(value:String ,nums Value1:String)->(String,String){
    
    return (value,Value1)
}

var (A,B)=SayHello("hello",nums:"swift")

println("A=\(A),B=\(B)")

运行结果

  A=hello,B=swift

复制代码

 

7:函数返回值 ---函数

 

复制代码
// 自加函数
func  Add(num : Int)->Int{
    return num + 1
}
//自减函数

func zj(num : Int)->Int{
    
    return num - 1
}


//定义返回函数类型

func  SayHello(num:Bool)->(Int)->Int{ //其中 (Int)->Int 返回参数为整形,返回值为整形的函数
    
    return num ? Add : zj
}


var num = 10

var fun:(Int)->Int = SayHello(num > 5);

num = fun(num)

println("num=\(num)")

运行结果

num=11
复制代码

 

 

 后面的文章,我回陆续把我学习到swift语言的知识写出来形成一个系列。由于是新语言,难免有不足,欢迎给我提出意见。也可以加我QQ 1436051108一起讨论,如果您有什么问题,也可以直接在QQ留言发给我,我看到之后第一时间回复您

  最后总结一下。送上一直思维导图,作为文章的结束

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值