温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Swift函数基本概念

发布时间:2020-08-02 23:54:44 阅读:330 作者:hehemmm 栏目:移动开发
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

函数语法:

    func 函数名(参数列表)->返回值类型{

        语句组

        return 返回值

}

参数列表:  参数名:类型

                外部参数 ;            

         func rectangleArea(W width:Double,H height:Double) -> Double {

                let area = width * height

                return area 

}

            println("\(rectangleArea(W: 320,H: 480)")

--------------------------------------------------------------------------------------

                

func rectangleArea(# width:Double,# height:Double) -> Double {

                let area = width * height

                return area 

}

            println("\(rectangleArea(width: 320,height: 480)")

--------------------------------------------------------------------------------------------

                

                 参数默认值:在定义函数的时候可以为参数设置一个默认的参数值,当调用函数的时候可以直接忽略该参数:

                

                func makecoffee(type : String = "卡布奇诺") -> String {

                    return "制作一杯\(type)咖啡"

}

            //当参数有默认参数值的时候,在调用参数的时候,需要指定参数名

            let coffee1 = makecoffee(type: "拿铁");

            let coffee2 = makecoffee();

            

            使用下划线指定外部参数名,调用参数的时候,可以省略参数名,前提是参数有默认值:

            func circleArea (R radius : Double = 30, _ pi : Double = 3.14){

                    let area = radius * radius * pi

                    return area;

}

                println("circle area:\(circleArea(R: 50,3.14159))")

---------------------------------------------------------------------------------------------

                

                可变参数;

            函数参数个数可以变化,它可以接受不固定数量的输入类型参数,它们具有相同的类型,有点像是传递数组,可以在参数类型后面加入(...)方式来指明是可变参数

                    示例:

                        func sum(numbers : Double...) -> Double {

                        var total : Double = 0

                        for number in numbers {

                        total += number

}

                    return total

}    

                  sum(10,20,30),sum(10,50)

                参数的传递引用:

                        参数传递的方式有2种:值类型和引用类型

                             只有类是引用类型,其他数据类型如整型,浮点型,布尔型,字符串,元组,结合,枚举和结构体全部是值类型

                示例:

            class PassTest (

                var ptValue = 0 

)

            func changeObValue(ref : PassTest) {

                    ref.ptValue = 99

}

                                

            var pt = PassTest()

            println(pt.value)

            

             changeObValue(pt)

             println(pt.value)                    

            func changeInt(var value : Int) {

                value = 55

}

                var val = 11

            changeInt(val)

                

            println(val)

            如果一定要将一个值类型参数作为引用传递,也是可以实现的,Swift提供的inout关键字就可以实现

            

                

           func changeInt(inout value : Int) {

                value = 55

}

                var val = 11

            changeInt(&val)

                

            println(val)

需要了解的问题:

1、关于单值和多值的问题;

2、关于无法返回值的情况;

实例:

    func rectangleArea(width:Double,height:Double) -> Double {

                let area = width * height

                return area 

}

println("\(rectangleArea(320,480)")

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×