1、两个属性都允许为nil 生命周期中会变为nil,使用弱引用,一定是可选类型的,设置为nil时,不会调用属性观察者 class Person{ let name:Str...
![240](https://cdn2.jianshu.io/assets/default_avatar/3-9a2bcc21a5d89e21dafc73b39dc5f582.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
IP属地:广东
1、两个属性都允许为nil 生命周期中会变为nil,使用弱引用,一定是可选类型的,设置为nil时,不会调用属性观察者 class Person{ let name:Str...
第一阶段,每一个存储属性被引入类分配了一个初始值。一旦存储属性的初始状态被确定,第二阶段就开始了。每个类都有机会在新的实例使用之前来定制它的存储属性。 初始化安全,同时在每一...
结构体和枚举,基本类型都是值类型。 String,Array,Dictionary类型是作为结构体来实现的。 共同点: 1、定义属性,存储值 2、定义方法,提供功能 3、定义...
extension String{ //子串 funcsubStringFromIndex(_index:Int)->String?{ ifvalideIndex...
/* Swift枚举中支持以下四种关联值类型: 整型(Integer) 浮点数(Float Point) 字符串(String) 布尔类型(Boolean) */ //写法1...
///给语句打标签 gameLoop,结合break和continue使用 functest(){ letfinalSquare =25 varboard = [In...
比如类Test: @interface Test : NSObject @property(nonatomic,copy)NSString* str; @end Test* ...
/* defer代码块调用规则 *1、defer所在的func或scope必须执行到defer才会触发 *2、所在func或scope结束时执行时调用defer代码块 *3、...