有没有办法在类级别或结构级别在swift中添加方法?
struct Card { var rank: Rank var suit: Suit func simpleDescription() -> String { return "The \(rank.simpleDescription()) of \(suit.simpleDescription())" } }
摘录自:Apple Inc.“Swift编程语言”iBooks。 https://itun.es/us/jEUH0.l
要在类中添加类型级方法,请在func声明之前添加class关键字:
class Dealer { func deal() -> Card { ... } class func sharedDealer() -> Dealer { ... } }
要在结构或枚举中添加类型级方法,请在func声明之前添加static关键字:
struct Card { // ... static func fullDeck() -> Card[] { ... } }
两者通常相当于Java中的静态方法或Objective-C中的类方法(使用a声明),但关键字会根据您是否处于类或结构或枚举中而更改。见Swift编程语言书中的Type Methods。