import Foundation
//枚举的定义
enum CompassPoint
{
case North,South,East,West
func desc()
{
switch self {
case .North:
println("当前指向为北")
case .South:
println("当前指向为南")
case .East:
println("当前指向为东")
case .West:
println("当前指向为西")
}
}
}
var compass = CompassPoint.North //初始化枚举,当前指向为北
compass = .South // 当前指向为南
compass.desc()
//带参的枚举
enum Suit:String
{
case Spades = "黑桃", Hearts = "红桃",Diaminds = "方块",Clubs = "草花"
}
var suit = Suit.Hearts
println(suit.toRaw()) //toRaw()系统自带的
let tempSuit = Suit.fromRaw("草花")! // !表示可选
println(tempSuit.toRaw())
enum Rank:Int
{
case Ace = 1 //下面默认的参数会自动 +1
case Two,Three,Four,Five,Six,Sever,Eight,Nine,Ten
case J,Q,K
}
let ace = Rank.J
let aceRawValue = ace.toRaw()
println(ace.toRaw())
//结构体
struct Card
{
var rank:Rank
var suit:Suit
func toString() -> String
{
return "牌的大小为:\(rank.toRaw()),牌的花色:\(suit.toRaw())"
}
}
let card = Card(rank:.Three, suit:.Hearts)
println(card.toString())
Swift-枚举和结构体
最新推荐文章于 2021-09-26 15:41:26 发布