Swift 中的函数(上)

学习来自《极客学院:Swift中的字典》

工具:Xcode6.4

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

 1 import Foundation
 2
 3 //函数
 4 /*1.定义函数的语法格式
 5     func 函数名(形参列表) -> 返回值类型 {
 6     //可执行语句组成的函数
 7 }
 8 */
 9 //定义和调用函数
10 func sayHello(personName: String) -> String{
11     return "Hello "+personName
12 }
13 println(sayHello("HeYang"))
14
15 //2.外部参数名 局部参数名:形参类型
16 func area(宽 width: Double,高  height: Double) -> Double
17 {
18     return width * height
19 }
20 print("面积是:")
21 println(area(宽: 3.4, 高: 4.3))
22 //但是这样比较麻烦,所以需要用#号
23 func area_1(#width: Double,#height: Double) -> Double
24 {
25     return width * height
26 }
27 print("改了之后:")
28 println(area_1(width: 34.1, height: 9.2))
29
30 //3可变参数:在参数类型后面添加 ... 表示该参数
31 func sum(numbers: Int...) -> Int{
32     var total : Int = 0
33     for num in numbers{
34         total += num
35     }
36     return total
37 }
38 println("求和是:\(sum(1,2,3,4))")
39 //要注意的地方:一个函数只能有一个可变参数,而且可变参数只能位于最后
40
41 //4.默认参数
42 func sayHi(msg: String,name: String = "HeYang"){
43     println("\(name),\(msg)")
44 }
45 sayHi("你好~")
46 sayHi("你好~", name: "world")
47 //不能去掉里面的 name: 也就是带有默认参数的是有外部参数名的,也就是说,默认参数相当于是在外部声明定义的。如果要忽略的话,就在默认参数前面添加下划线:unc sayHi(msg: String,_ name: String = "HeYang")不是_name而是_ name
48
49 //如果有可变参数,也有默认参数,那么可变参数放在最后面,默认参数只能出现在次后面
50
51 //5.常量形参 和 变量形参
52 func factorial(var number:Int) -> Int{
53     var result: Int = 1
54     while number > 1{
55         result = result*number
56         number--
57     }
58     return result
59     //变量的形参作用域在函数内部,所以形参怎么变化都是不会影响到外面的变量
60 }
61 print("形参")
62 println(factorial(4))
63
64 //6.In-Out形参
65 func swap(inout a:Int,inout b:Int){
66     var temp = a
67     a = b
68     b = temp
69 }
70 var a = 1
71 var b = 2
72 swap(&a, &b)
73 println("交换之后,a:\(a) b:\(b)")
74 /*注意
75 1.只能传入变量作为实参
76 2.输入输出参数不能带有默认值
77 3.如果你用关键字,inout标记了一个参数,这个参数不能用var或者let去标记
78 */

运行输出结果是:

时间: 2024-11-06 15:57:30

Swift 中的函数(上)的相关文章

Swift 中的函数(下)

学习来自<极客学院:Swift中的函数> 工具:Xcode6.4 直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会 1 import Foundation 2 3 /***********嵌套函数*************/ 4 func getMathFunc(#type: String) -> (Int) -> Int{ 5 func squre(num:Int) -> Int{ 6 return num*num 7 } 8 func cube(num:

Swift 中的函数(中)

学习来自<极客学院: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 printl

浅谈swift中的函数类型和闭包

在讲swift的函数类型之前,我们先回忆一下我们以前学的定义一个swift的函数 func add(a: Int,b: Int) -> Int { return a + b } 好了, 我们开始我们函数类型的讲解 上面这个函数的类型是(Int ,Int)->Int 使用函数类型 我们都知道, 在swift中 , 函数类型就像其他数据类型一样,也就意味着我们可以给一个函数的常量或者是变量赋值 var f2: (Int,Int)-> Int = add f2(2,3) //结果为5 好了,接

【iOS】Swift中的函数、断言、枚举等

函数与方法.枚举等的书写格式与用法较OC还是变化很大的. 一.函数 1.1 无返回值, 无形参 func myTest2(){ println("Hello") } 1.2 有返回值,有形参 func myTest1( num1:Int , num2:Int ) -> String{ return String(num1 + num2) } 1.3 外部参数. (相当于给参数起了个别名,方便识别记忆) func myTest3 (myNum1 num1 :Int ,myNum2

Swift 中的高阶函数和函数嵌套

高阶函数 在Swift中,函数可做为"一等公民"的存在,也就意味着,我们可以和使用 int 以及 String 一样,将函数当做 参数.值.类型来使用. 其中,将函数当作一个参数和值来使用可见下: typealias addTwoInts = (Int,Int)->(Int) var funcType = addTwoInts.self func aAddb(a:Int,b:Int) -> Int { return a+b } func addFunc(_ add:addT

Swift 中的利刃,函数和闭包

input[type="date"].form-control,.input-group-sm>input[type="date"].input-group-addon,.input-group-sm>.input-group-btn>input[type="date"].btn,input[type="time"].input-sm,.form-horizontal .form-group-sm input

Swift新手教程系列5-函数+selector在swift中的使用方法

原创blog.转载请注明出处 近期在用swift写代码,尽管遇到一些问题,可是代码量确实减了不少. swfit新手教程系列会随着我使用swfit中的积累,不断地去修正更新 之前的教程 swift单例模式具体解释-线程安全,多核性能 swift新手教程4-集合(Array,Dictionary) swift新手教程3-字符串String swift新手教程2-运算符 swift新手教程1-准备知识 在swift中,函数有keywordfunc声明 格式 func 函数名(參数1,參数2,...)-

Swift学习之函数和简单地控件的创建

 今天还是重复昨天做的事情--敲代码,但唯一的不同就是所学的知识不同了,我们又进一步往深得层次学习了,感觉越来越有意思了,虽然临近结束了看着大家积极性越来越低了,但是我知道我不能这样,我要比别人付出的更多,更加的踏实才行,因为我知道我的基础不如别人,目标和动力也和他们不同,看着大家有的说是只要找到工作就好,还有的说只要每个月够花就好,担着真的是大家来这里学习的最终目的吗,如果是这样,真的还不如随便找个工作将就一下,也比这个整天做到这好多了,还交了那么贵得费用,所以何必呢,既然选择了这条路,既然当

Swift中的闭包(Closure) 浅析

转载自:http://www.devtalking.com/articles/closure-expressions-in-swift/ 闭包在Swift中非常有用.通俗的解释就是一个Int类型里存储着一个整数,一个String类型包含着一串字符,同样,闭包是一个包含着函数的类型.有了闭包,你就可以处理很多在一些古老的语言中不能处理的事情.这是因为闭包使用的多样性,比如你可以将闭包赋值给一个变量,你也可以将闭包作为一个函数的参数,你甚至可以将闭包作为一个函数的返回值.它的强大之处可见一斑. 在S