函式
//1.
定義函式
func 函式名(傳入的值:string) ->string
//2.
函式的呼叫
let 傳入值 = "hallow xiaozhou"
println("
函式呼叫的結果為:\(函式名(傳入值))")
//函式呼叫的結果為:
hallow xiaozhou
//3.
函式的形式引數和它的返回值
多參和無參
.1 多參
func 長度(起始值:int,終止值:int) ->int
println("
多參的最終結果為:\(長度(2,6))")
//多參的最終結果為:4
.2無參
func 問候語() -> string
println("
接**時,禮貌的做法是:第一句說\(問候語())")
//接**時,禮貌的做法是:第一句說你好
無返回值
func 顯示並計數(字串:string)
顯示並計數("
淚滴嘎嘎
")//
淚滴嘎嘎的長度為4
多返回值
(返回值為元祖)
func 取極值(陣列:[int]) -> (max:int,min:int) else
if 變數 < 最小值
}return (最大值,最小值)
}let array = [2,10,-1,23,72,7,1,100]
let (max,min) = 取極值(array)
println("
陣列\(array)中最大值為
:\(max),
最小值為
:\(min)")
//陣列
[2, 10,-1, 23, 72, 7, 1, 100]
中最大值為
:100,
最小值為
:-1
可選元祖返回,新增
"?"變為可選
func 取極值2(陣列:[int]) -> (max:int,min:int)? elseelse
if 變數 < 最小值
}return(最大值,最小值)}}
//[int]()
空陣列
let 極值 = 取極值
2([int]())
println("
極值為:\(極值)")
//極值為
:nil
let 極值2 = 取極值
2([1,2,3,4,0])
println("極值2
為:\(極值
2)")
//極值2為
:(4, 0)
//4.
本地引數和外部引數
有外部引數的函式(姓名,性別都是外部引數)
func 個人資訊(姓名 name:string,性別 ***:string) ->string
let 資訊 = 個人資訊(姓名: "
小周", 性別:"女")
println("
個人資訊
:\(資訊)")
//個人資訊
:你的姓名為:小周
,性別為:女
本地引數名和外部引數名的統一
(#)
func 個人資訊2(#姓名:string,#性別:string) ->string
//呼叫結果與方式與有外部引數的函式一樣,但這樣更簡潔
let 資訊2 = 個人資訊
2(姓名: "
小周", 性別:"女")
println("
個人資訊
:\(資訊
2)")
//個人資訊
:你的姓名為:小周
,性別為:女
//5.
引數預設值
func 個人資訊3(姓名:string,性別:string ="
男") ->string
呼叫方法一:不用預設值
("性別
:"->
有引數預設值自動把本地引數變成外部引數名)
let 資訊3 = 個人資訊
3("小周
", 性別:"女")
println("
個人資訊
:\(資訊
3)")
//個人資訊
:你的姓名為:小周
,性別為:女
呼叫方法二:用預設值
let 資訊4 = 個人資訊
3("小周
")println("
個人資訊
:\(資訊
4)")
//個人資訊
:你的姓名為:小周
,性別為:男
//6.
可變引數
(陣列集
:int...
傳的陣列個數不一樣
),如果有多個引數,一定要把可變引數放在最後,不易混淆
func 求和(其他值:string,數字集:int...) ->int
return 和
}//1,2,3,5
數字集,還可以向後面新增值,如:
1,2,3,5,6,8,4,3,9等
let 和 = 求和("10", 1,2,3,5)
println("
和為:\(和)")
//和為
:11
//7.
可變引數
let 名字 = "小周"
//必須是」var「
,不然預設是
「let」,
不可變
func 居右對齊(var 原文本:string ,長度:int,填充字元:string) ->string
return 原文本
}let b = 居右對齊(名字, 10,"@")
println(b)
//@@@@@@@@小周
引數(可以直接改變傳進去引數的值)
func 交換值(inout a:int,inout b:int)
var a1 = 10,a2 = -10
交換值(&a1, &a2)
println("a1
原來的值為
10,現在為\(a1),a2
原來的值為
-10,現在為\(a2)")
//a1
原來的值為
10,現在為
-10,a2
原來的值為
-10,現在為10
//9.
函式型別作為變數和常量
func 兩個數相加(a:int,b:int)->int
func 兩個數相乘(a:int,b:int)->int
var 臨時 = 兩個數相加
臨時(2,5)//7
臨時 = 兩個數相乘
臨時(2,5)//10
//10.
函式型別作為引數
func 顯示相乘結果 (a:int,b:int,相乘函式:(int,int) ->int)
顯示相乘結果(10,100, 兩個數相乘)
//10
乘100
等於1000
//11.
巢狀函式(函式裡面有函式)
func 判斷加減(正:bool) -> (int)->int
func 減(數:int) ->int
return 正 ? 減 : 加 }
Swift 函式的基本使用
main.swift testfunctions created by 朱立志 on 14 6 11.import foundation println hello,world 單個引數輸入函式 func sayhello personname string string println sayhe...
swift 函式使用注意
1.外部引數與內部引數 swift3.0後不區分了 在此還是解釋下,權當了解了 內部引數 所有在引數內部可以看見的引數 即在引數宣告時的引數 即為內部引數,預設情況下所有引數都是內部引數 外部引數 在函式外可以看到的引數名稱就是外部引數,預設情況從第二個引數開始既是內部引數也是外部引數 如果希望看到...
swift中的函式的使用,巢狀
函式 swift 中 函式的關鍵字叫 func func 函式名 引數 返回值 函式的宣告與實現 func 問候語 name string day string string 函式呼叫 在xcode7之前不用加 print 問候語 lisa 星期三 在xcode7之後就需要加標籤,如下 print ...