說明:func 聲明一個(gè)函數(shù), ->用來分隔函數(shù)參數(shù)和返回值
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比南票網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式南票網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋南票地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
//demo1 返回不同類型的值
func greet(name: String,what: String ) -> String{
return "Hello \(name), today is \(what)"
}
let string = greet("zhongkun","wednesday")
println("print: \(string)")
func getGasPrices() ->(Double,Double,Double){
return (1.1,2.1,3.1)
}
println("getGasPrices: \(getGasPrices())")
//傳入不同的參數(shù)
func sumOf(numbers: Int...) -> Int {
var sum = 0
for number in numbers {
sum += number
}
return sum
}
sumOf()
sumOf(42, 597, 12)
//函數(shù)可以嵌套
func returnFifteen() -> Int {
var y = 10
func add() {
y += 5
}
add()
return y
}
returnFifteen()
println("nested Function: \(returnFifteen())");
//返回值類型可以是一個(gè)函數(shù)
func funcReturnTwo() -> (Int -> Int){
func addOne(number:Int) -> Int {
return number+1
}
return addOne
}
var addOneResult = funcReturnTwo()
let resultReturn = addOneResult(30)
println("functionReturn:\(resultReturn)")
//函數(shù)可以作為另一個(gè)函數(shù)的參數(shù)傳入
func hasAnyMatches(list: Int[], condition: Int -> Bool) -> Bool {
for item in list {
if condition(item) {
return true
}
}
return false
}
func lessThanTen(number: Int) -> Bool {
return number < 10
}
var numbers = [20, 19, 7, 12]
let resultParamterFunc = hasAnyMatches(numbers, lessThanTen)
println("funcionParamter:\(resultParamterFunc)")
//其他(目前還不太清楚)
numbers.map({
(number: Int) -> Int in
let result = 3 * number
return result
})
下一章將講解swift的對(duì)象和類