版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2017.08.01 |
前言
我是swift2.0的時候開始接觸的,記得那時候還不是很穩定,公司的項目也都是用oc做的,并不對swift很重視,我自己學了一段時間,到現在swift3.0+已經出來了,自己平時也不寫,忘記的也差不多了,正好項目這段時間已經上線了,不是很忙,我就可以每天總結一點了,希望對自己對大家有所幫助。在總結的時候我會對比oc進行說明,有代碼的我會給出相關比對代碼。
1. swift簡單總結(一)—— 數據簡單值和類型轉換
2. swift簡單總結(二)—— 簡單值和控制流
3. swift簡單總結(三)—— 循環控制和函數
4. swift簡單總結(四)—— 函數和類
5. swift簡單總結(五)—— 枚舉和結構體
6. swift簡單總結(六)—— 協議擴展與泛型
7. swift簡單總結(七)—— 數據類型
8. swift簡單總結(八)—— 別名、布爾值與元組
9. swift簡單總結(九)—— 可選值和斷言
10. swift簡單總結(十)—— 運算符
11. swift簡單總結(十一)—— 字符串和字符
12. swift簡單總結(十二)—— 集合類型之數組
13. swift簡單總結(十三)—— 集合類型之字典
14. swift簡單總結(十四)—— 控制流
15. swift簡單總結(十五)—— 控制轉移語句
16. swift簡單總結(十六)—— 函數
17. swift簡單總結(十七)—— 閉包(Closures)
18. swift簡單總結(十八)—— 枚舉
19. swift簡單總結(十九)—— 類和結構體
20. swift簡單總結(二十)—— 屬性
21. swift簡單總結(二十一)—— 方法
22. swift簡單總結(二十二)—— 下標腳本
23. swift簡單總結(二十三)—— 繼承
24. swift簡單總結(二十四)—— 構造過程
25. swift簡單總結(二十五)—— 構造過程
26. swift簡單總結(二十六)—— 析構過程
27. swift簡單總結(二十七)—— 自動引用計數
28. swift簡單總結(二十八)—— 可選鏈
29. swift簡單總結(二十九)—— 類型轉換
嵌套類型
枚舉類型常被用于實現特定類或結構體的功能,也能夠在多種變量類型的環境中,方便地定義通用類或結構體來使用,為了實現這種功能,swift
允許你定義嵌套類型,可以在枚舉類型、類和結構體中定義支持嵌套的類型。
將從下面幾個方面進行說明。
- 嵌套類型實例
- 嵌套類型的引用
嵌套類型實例
struct BlackjackCard {
//嵌套定義枚舉型Suit
enum Suit : Character {
case Spades = "?", Hearts = "?", Diamonds = "□", Clubs = "?"
}
//嵌套定義枚舉型Rank
enum Rank : Int {
case Two = 2, Three, Four, Five, Six, Seven, Eight, Nine, Ten
case Jack, Queen, King, Ace
struct Values {
let first : Int, second : Int?
}
var values : Values{
switch self {
case .Ace:
return Values(first: 1, second: 11)
case .Jack, .Queen, .King:
return Values(first: 10, second: nil)
default:
return Values(first: self.rawValue, second: nil)
}
}
}
}
枚舉型的Suit
用來描述撲克牌的四種花色,枚舉值Rank
用來描述撲克牌啥的13張牌,并且分別用一個Int
類型的值表示牌的面值。
我們在別的類中調用就可以實現實例。
嵌套類型的引用
在外部對嵌套類型的引用,以被嵌套類型的名字為前綴,加上所要引用的屬性名,下面看一下代碼。
let heartsSymbol = BlackjackCard.Suit.Hearts.rawValue
print(heartsSymbol)
下面看輸出結果
?
這個應該還算好理解吧。
后記
未完,待續~~~