您的位置:首页 > 移动开发 > Swift

Swift学习笔记(三十四)——函数类型

2015-09-16 17:10 405 查看
(1)函数也可以赋值给一个变量,此时这个变量的类型是什么呢?

import Foundation

func add(a:Int,b:Int) -> Int{

return a+b
}

let anotherAdd:(Int,Int) -> Int = add
anotherAdd(3,4)


(2)如果参数的返回值为空,那么这个函数类型应该怎么写呢?

import Foundation

func add(a:Int,b:Int) {

var c = a + b
}

let anotherAdd:(Int,Int) -> () = add
anotherAdd(3,4)


或者:

import Foundation

func add(a:Int,b:Int) -> () {

var c = a + b
}

let anotherAdd:(Int,Int) -> () = add
anotherAdd(3,4)


或者:

import Foundation

func add(a:Int,b:Int) -> Void {

var c = a + b
}

let anotherAdd:(Int,Int) -> () = add
anotherAdd(3,4)


或者:

import Foundation

func add(a:Int,b:Int) -> Void {

var c = a + b
}

let anotherAdd:(Int,Int) -> Void = add
anotherAdd(3,4)


(3)如果这个函数没有参数,那函数类型是什么呢?

import Foundation

func add() {

}

let anotherAdd:() -> Void = add
anotherAdd()


(4)排序

import Foundation

var arr = [Int]()
for _ in 1...20{

arr.append(Int(arc4random()%100))
}

println(arr)

sorted(arr)
println(sorted(arr))


这个是从小到大排序,如果我想从大到小,应该怎么办呢?

import Foundation

var arr = [Int]()
for _ in 1...20{

arr.append(Int(arc4random()%100))
}

println(arr)

sorted(arr)
println(sorted(arr))

func compareTwoInts(a:Int,b:Int) -> Bool{

return a > b
}

println(sorted(arr,compareTwoInts))


github主页:https://github.com/chenyufeng1991  。欢迎大家访问!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: