iOS开发教程老郭最新Swif语言函数解析

  iOS开发之Swift语言-函数是一个完成独立任务的代码块,Swift中的函数不仅可以像C语言中的函数一样作为函数的参数和返回值,而且还支持嵌套,swift函数和c#,js的写法大致一直,但是与object-c写法有很大不同点。


我们看一下swift中函数的形式有哪些:


无返回值的函数




func test(name:String){
     
}




返回一个返回值


func test(name:String) -> Bool{
    return true
    /*
    参数变量是默认常量类型,不能在函数函数体里面直接修改
    即 test(name:String)  与 test(let name:String)写法是相同的,即value 是常量。
    */
//----------------------错误写法--------------
//name = "A"
}




如果要改变参数的值,就需要在定义函数的时候加上关键字var


func add(var age:Int) {
    age += 1//外部的参数任然不会被修改
}




如果想要同时改变函数内外的参数值,可以利用inout关键字,同时调用函数的时候给参数加上前缀“&”


func add(inout age:Int){
    age += 1
}
var age = 22
add(&age)
print(age) //23
可以给参数设定默认值
func SayHello(value:String = "AA"){
    print("value=\(value)")
}
SayHello("10") //带参数
SayHello()//不带参赛




可以接受0个或者任意数量的输入参数


func test(numbers:Int...) -> Int{
    var count:Int = 0
    for number in numbers{
        count += number
    }
    return count
}




返回由多个值组成的复合返回值




func test(name:String) -> (Int,Bool){
    var position = 1
    var visible = false
    return (position,visible)
}




可以使用函数类型的参数


func additive(a:Int, b:Int) -> Int{
    return a + b
}
//函数类型的参数
func printAdditiveResult(addFun: (Int, Int) -> Int, a:Int, b:Int){
    print("Result:\(addFun(a,b))")
}
printAdditiveResult(additive, a: 5 ,b: 7)




也可以使用函数类型的返回值




//定义个自增函数
func increase(input:Int) -> Int{
    return input + 1
}
//定义个自减函数
func reduce(input:Int) -> Int{
    return input - 1
}
//定义一个返回函数类型的函数
func chooseFunction(backwards:Bool) -> (Int) -> Int{
    return backwards ? reduce : increase
}
//测试
let aFun = chooseFunction(3>2)
print(aFun(3))  //2




外部参数名:


基本形式:


func  函数名 (参数变量:类型 ,参数说明  参数变量:类型)


函数中的第一个不需要参数说明


参数说明 + 参数名 : 类型 ,构成一个参数


调用方法


函数名(参数值,参数说明:参数值,参数说明:参数值....)


func Hello(value : String, myStr value1 : String){
    var  str = value + value1
    print("str= \(str)")

}

Swift语言苹果官方发布最新iPhone语言,iOS开发教程——Swift语言一款易学易用的编程语言,而且它还是第一套具有与脚本语言同样的表现力和趣味性的系统编程语言。可与Objective-C*共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值