什么是扩展
扩展用于扩展 Swift 中现有类型的功能。扩展可以添加下标,函数,初始值设定项和计算属性。它们还可以使类型符合协议 。
假设你希望能够计算 Int
的阶乘 。你可以在扩展中添加计算属性:
extension Int {
var factorial: Int {
return (1..<self+1).reduce(1, combine: *)
}
}
然后,你可以访问该属性,就像它已包含在原始 Int API 中一样。
let val1: Int = 10
val1.factorial // returns 3628800