Swift学习笔记(六) -- 枚举

通过学习Swift 4.0,总结一下Swift相对于Objective-C的一些新特征。

枚举 enumeration

  • 计数、列举(有限的情况):详细叙述之意。”增强的、更抽象型”的数字类型;
  • 附加值(可选) :每一种类型都可以附加一个或多个值,形式是元组。
基本写法:
1
2
3
4
5
6
enum Weather {
case sunny
case cloudy
case rainy
case snow
}




配合switch语句使用:
1
2
3
4
5
6
7
8
9
10
var tmpW = Weather.cloudy

switch tmpW {
case .sunny :
print("天气晴朗🌞")
case .cloudy :
print("今天多云⛅️")
default:
print("天气未知")
}


包含附加值的enum:
1
2
3
4
5
6
enum Weather2 {
case sunny(Int,String)
case cloudy(Int,String)
case rainy(Int,String)
case snow(Int,String)
}

使用举栗:

1
2
3
4
5
6
7
8
9
10
var tmp2 = Weather2.cloudy(22,"紫外线强")

switch tmp2 {
case .sunny(let wendu, let ziwai) :
print("天气晴朗,气温:\(wendu),\(ziwai)")
case .cloudy(let wendu, let ziwai) :
print("今天多云,气温:\(wendu),\(ziwai)")
default:
print("天气未知")
}