91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

富蕴县| 滨州市| 汪清县| 吐鲁番市| 惠安县| 特克斯县| 井陉县| 教育| 墨江| 尖扎县| 安龙县| 惠水县| 大邑县| 宝清县| 张家界市| 乌鲁木齐市| 长沙市| 平定县| 南部县| 五常市| 莒南县| 延庆县| 永丰县| 西昌市| 北安市| 无棣县| 建始县| 江油市| 广水市| 怀集县| 黔东| 富宁县| 昌宁县| 马山县| 江山市| 喀喇沁旗| 铁力市| 彭山县| 郓城县| 固原市| 隆安县|