枚举、结构体、类
注:本文为作者自己总结,过于基础的就不再赘述 ,都是亲自测试的结果。如有错误或者遗漏的地方,欢迎指正,一起学习。
1、枚举
枚举是用来定义一组通用类型的一组相关值 ,关键字enum
,case
关键词表明新的一行成员值将被定义。
enum Direction{
case East
case West
case South
case North
}
这里定义了一个简单的枚举类型 , 里面有四个枚举元素 。
也可以用一行的形式
enum Direction{
case East , West , South , North
}
可以这样来访问这个枚举类型var dir = Direction.East
,这时候这个变量 dir
已经被推断成Direction
,重新赋值的时候 可以直接用短语法dir = .West
。
- 相关值(Associated Values)
你可以定义 Swift 的枚举存储任何类型的相关值,如果需要的话,每个成员的数据类型可以是各不相同的。
enum Barcode {
case UPCA(Int , Int , Int ,Int )
case QRCode(String)
}
你可以这样给它赋值var pro = Barcode.UPCA(8, 53627, 29009, 1)
,也可以这样修改pro = .QRCode("DSLEKWLJELJAIWFLWKJF")
这样取值
switch pro{
case .UPCA(let a1,let a2, let a3, let a4):
print("\(a1) , \(a2) , \(a3) , \(a4)")
case .QRCode(let s):
print(s)
}
你也可以把let写在最前面
switch pro{
case let .UPCA( a1, a2, a3, a4):
print("\(a1) , \(a2) , \(a3)