亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Swift函數類型

發布時間:2020-07-29 07:59:50 來源:網絡 閱讀:330 作者:hehemmm 欄目:移動開發

    函數可以作為一種類型使用,作為類型與其它數據類型沒有區別:


    有如下3個函數的定義:


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

            let area = width * height

            return area


}


      (2)func triangleArea(bottom : Double, height : Double ) -> Double {

            let area = 0.5 * bottom *  height

            return area


}


        (3)func sayHello(){

            println("Hello World")


}


        第一個和第二個函數的返回類型都是(Double,Double) -> Double,第三個函數返回的類型為() ->()



        函數作為參數類型使用:可以把函數的類型作為另一個函數的返回類型使用:


        示例:


            

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

            let area = width * height

            return area


}



        func triangleArea(bottom : Double, height : Double ) -> Double {

            let area = 0.5 * bottom *  height

            return area


}



             func getArea(type : String) -> (Double,Double) ->Double {

                        var returnFunction :(Double,Double) -> Double


                            switch type {

                                case "rect":

                                        returnFunction = rectangleArea

                                case "tria" :


                                        return triangleArea

                                default:

                                        returnFunction = rectangleArea


}

                            return returnFunction

}


                var area = getArea("tria")

                println("TriangleArea:\(area(20,30))")


                

                var area = getArea("rect")

                println("TriangleArea:\(area(20,30))")



        可以把函數類型作為其它函數的參數類型使用:

            

        示例:

            

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

            let area = width * height

            return area


}



        func triangleArea(bottom : Double, height : Double ) -> Double {

            let area = 0.5 * bottom *  height

            return area


}



          func getAreaByFunc(funcName : (Double,Double) -> Double, a: Double,b: Double) -> Double {


                var area = funName(a,b)

                return area

}


            var result :Double = getAreaByFunc(rectangleArea,20,30)


                

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

利津县| 通州区| 镇巴县| 霞浦县| 会东县| 东乡县| 永丰县| 盐山县| 屯门区| 简阳市| 炎陵县| 积石山| 长顺县| 孝感市| 贵定县| 大石桥市| 雷山县| 呼和浩特市| 慈利县| 佛学| 呼伦贝尔市| 城固县| 铜川市| 循化| 永安市| 徐州市| 永春县| 安平县| 祁门县| 辉县市| 沾化县| 梅河口市| 迁安市| 蒙自县| 古丈县| 洮南市| 枣阳市| 皮山县| 平和县| 历史| 永春县|