在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
写久了OC后来写swift,总感觉写着是swift的皮毛,但是实际上是OC的核心,这里整理了OC迁移至swift中的一些小细节。1 在当前类中,实例方法调用属性以及方法都可以将self省略掉,而且是建议省略 2 selector是调用方法写法是:Selector("sayHello")或者是#selector(sayHello) 3 swift中不同类型的值之间不能直接做运算,所以不同类型值做运算的时候需要对值进行类型转化,都转化至同一类型之后方可做运算 4 1 可选类型的值不能直接参与运算,需要强行解包之后才能使用,使用 `!` 2 标识强行解包某个可选类型的值。使用`!`一定要确定该值不为`nil`才可 3 以对这个值进行强制解包,如果对`nil`进行强制解包的话程序会崩溃
guard比if-let少了一层代码嵌套 guard var n = m else{ 当变量m的值为空的时候执行这里的代码块,执行结束之后return出去 ........ return } 不为空的话往下执行 printf(n)
6 switch
7 必选属性与可选属性
8 swift细化了属性的类型
9 set方法与get方法
10 重写
11 swift中单例写法
static let singleInstance:类名 = { let instance = 类名() return instance }()或者 static let instance = 类名() let singleInstance:类名 = { return instance }
12 swift中遍历数组时候必须明确数组里面元素的类型 for item in array as! [String:Anyobject] { }
swift中类进行实例初始化的时候会根据工程名称在类名前加上命名空间再初始化,所以根据一个类名字符串创建实例需要先获取类名空间
14 异常捕获try throw
15
16 按钮监听不能使用
17 闭包回调中应该接收一个 18 swift中的字典转模型 init(dict){
super.init()
setValuesForKeyWithDictionary(dict)
}
19 swift中可以通过点语法直接修改结构体里面的变量
20 swift中遵守协议的用法
|
请发表评论