码迷,mamicode.com
首页 > 编程语言 > 详细

Swift 中的函数(中)

时间:2015-07-15 18:40:35      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

学习来自《极客学院:Swift中的函数》

工具:Xcode6.4 

直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会

 1 import Foundation
 2 
 3 //函数
 4 
 5 //1.多个返回值
 6 func area(width: Double,height: Double) -> (Double,Double)
 7 {
 8     var b = width
 9     var a = width * height
10     return (a,b)
11 }
12 println(area(2,3))
13 //2、函数类型
14 func addTwoInts(a: Int, b: Int) -> Int{
15     return a + b
16 }
17 var function: (Int,Int) ->Int = addTwoInts
18 println(function(3,4))
19 //3.函数类型作为参数类型
20 func outfunc(function_1: (Int,Int) ->Int,m:Int,n:Int){
21     println("result:\(function_1(m, n))")
22 }
23 outfunc(addTwoInts ,12,12)
24 //4函数类型作为返回值类型
25 func square(a :Int)->Int{
26     return a*a
27 }
28 func cube(a:Int)->Int{
29     return a*a*a
30 }
31 func getMatchFunction(str:String)->(Int)->Int{
32     switch(str){
33     case "square":
34         return square
35     default:
36         return cube
37     }
38 }
39 var mathFunc = getMatchFunction("cube")
40 println(mathFunc(5))
41 //函数重载
42 func test(){
43     println("无参数的test函数")
44 }
45 func test(msg:String){
46     println("重载的test()函数\(msg)")
47 }
48 func test(msg:String) -> String{
49     println("重载的test()函数,外部参数为\(msg)")
50     return "test"
51 }
52 func test(#msg:String) {
53     println("重载的test()函数,外部参数为\(msg)")
54 }
55 test()
56 var result: Void = test(msg: "何杨")
57 var result2: String = test("哇哦")
58 /*局部参数名不能作为区分重载 运行会报错
59 func test(message:String){
60     println("")
61 }
62 */

运行的结果:

技术分享

Swift 中的函数(中)

标签:

原文地址:http://www.cnblogs.com/goodboy-heyang/p/4648755.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!