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

Posted 宇仔TuT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

以上是关于Swift学习笔记-枚举和结构体的主要内容,如果未能解决你的问题,请参考以下文章

Swift学习笔记十六:协议

swift学习笔记构造过程

Swift学习笔记:枚举

swift 笔记 —— 方法(类,结构体,枚举)

《从零开始学Swift》学习笔记(Day 36)——静态方法

Swift学习笔记-协议和扩展