一 : 枚举类型
1> 枚举类型的常见定义方式
enum SchoolType :String{
case little ="xiaoxue"
case middle ="zhongxue"
case high ="gaozhong"
}
2>创建枚举具体的值
3>给枚举类型绑定值
4>枚举类型另外一种定义方式
二 : 结构体的使用
1>定义结构体
使用关键字struct +结构体名称 {
//属性...
可以添加一些结构体方法,假如要修改内部属性需要在方法名称前面加mutating
构造函数,一init开头,构造函数不需要返回值,但是需要在这个构造函数里面给诶个成员属性赋值,在构造函数之前所有成员属性都被初始化
}
2>创建结构体对应的值
3> 创建系统结构体的方式:cgrect 结构体为例
let rect =CGRect(x: 0, y: 0, width: 100, height: 100)
4> 给结构体扩充方法
在结构体重添加方法即可,假如要修改内部属性需要加 慕塔筒
5> 给结构体扩充构造函数
三: 类的使用
class 类名 {
//属性
// 如果属性是值类型, 则初始化为空值
// 如果属性是对象类型, 则初始化为nil值
var name : String = ""
var age : Int = 0
var view :UIView?
}
创建类的对象
let view = UIView()
let p = Person()
p.name = "why"
p.age = 10
p.view = view
类的属性定义:
监听类的属性的改变
类的构造函数
类的构造函数
监听对象销毁使用deinit { }
使用 unowned 来解决循环引用的, 不能用于修饰可选类型
可选链的使用