一、無參
import Foundation
// 定義
func test1(){
println("我是無參,無返回值函數")
}
// 調用
test1()
輸出:
我是無參,無返回值函數
Program ended with exit code: 0
二、有參數
1.有參數無返回值
// 定義
func test2(name:String,age:Int){
println("我是有參函數,name:\(name),age:\(age)")
}
// 調用
test2("July",22)
跟Java等語言相比的不同是形式參數列表類型和變量名位置不同,還多了個:,輸出:
我是有參函數,name:July,age:22
2.無參數有返回值
// 定義
func test3() ->(Int,String){
return (22,"July")
}
// 調用
println(test3())
輸出:
(22, July)
3.有參數有返回值
// 定義
func test4(name:String,age:Int) ->(String){
return "\(name),\(age)";
}
// 調用
println(test4("july",22))
輸出:july,22
當然我們還可以這樣寫:// 定義
func test5(m:Int,n:Int) ->(Int,Int){
return (n,m);
}
// 調用
let (a,b) = test5(6,8);
println(a,b)
輸出:
(8, 6)
你還可以這樣寫:
var test6 = test5
println(test6(10,20))
是不是找到了JS的感覺了,呵呵。還有一點就是,返回值可以有多個,而且類型也可以不一樣啊。
更讚的還不止這些,用過OC的都知道,可以有標籤,下面的寫法你一定不陌生
func test8(v1:String,andValue v2:String,andKey v3:Int) -> String{
return "\(v1) and \(v2) and \(v3)";
}
let v2 = test8("first",andValue:"second",andKey:100);
println(v2)
輸出:
first and second and 100
真心很棒吧!