iOS-swift-枚举和结构体
1.枚举
使用关键字 enum 创 建枚举。
枚举默认起始值为 0,可以自定义起始值。
在枚举中可以定义方法,和类中定义的一样。
使用关键字 rawValue 访问当前枚举的值。
enum Rank: Int { case ace = 1 case two, three, four, five, six, seven, eight, nine, ten case jack, queen, king func simpleDescription() -> String { switch self { case .ace: return "ace" case .jack: return "jack" case .queen: return "queen" case .king: return "king" default: return String(self.rawValue) } } } let ace = Rank.ace let aceRawValue = ace.rawValue
还有
if let convertedRank = Rank(rawValue: 3) { let threeDescription = convertedRank.simpleDescription() }
还有
enum Suit { case spades, hearts, diamonds, clubs func simpleDescription() -> String { switch self { case .spades: return "spades" case .hearts: return "hearts" case .diamonds: return "diamonds" case .clubs: return "clubs" } } } let hearts = Suit.hearts let heartsDescription = hearts.simpleDescription()
2 结构体
使用关键字 struct 创建结构体。
结构体和类很类似,包括方法和初始化。结构体和类之间最大的不同是在传值过程中结构体是值拷贝,而类是引用的拷贝。
struct Card { var rank: Rank var suit: Suit func simpleDescription() -> String { return "The \(rank.simpleDescription()) of \(suit.simpleDescription())" } } let threeOfSpades = Card(rank: .three, suit: .spades) let threeOfSpadesDescription = threeOfSpades.simpleDescription()
恩,努力。