Swift学习笔记(三)-枚举和结构体

枚举

使用 enum来创建枚举。

枚举也能够包含方法

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

默认情况下,Swift 从零开始给原始值赋值后边递增,但你可以通过指定特定的值来改变这一行为。

在上边的栗子当中,原始值的枚举类型是 Int,所以你只需要确定第一个原始值。剩下的原始值是按照顺序指定的。

你同样可以使用字符串或者浮点数作为枚举的原始值。使用 rawValue属性来访问枚举成员的原始值。

使用 init?(rawValue:) 初始化器来从一个rawValue创建枚举的实例。

if let convertedRank = Rank(rawValue: 3) {
    let threeDescription = convertedRank.simpleDescription()
}

结构体

使用 struct来创建结构体。

结构体提供很多类似与类的行为,包括方法构造函数。其中最重要的一点区别就是结构体总是会在传递的时候拷贝其自身,而类则会传递引用

struct Card {
    var rank: Rank
    var suit: Suit
    func simpleDescription() -> String {
        returnThe \(rank.simpleDescription()) of \(suit.simpleDescription())}
}
let threeOfSpades = Card(rank: .three, suit: .spades)
let threeOfSpadesDescription = threeOfSpades.simpleDescription()

Swift学习群

欢迎加入本人的Swift学习微信群,一同互相监督学习,我微信:reese90

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值