关于 swift 开发的变量或属性声明的建议(避免类型转换以及带来的强转崩溃问题)
来源:互联网 发布:js function use 编辑:程序博客网 时间:2024/06/07 23:19
我们都知道 swfit 是一个队类型要求很严格的语言,不同类型的变量不可以运算,使用的时候还要转换为指定的类型。我们也知道 !这个东西经常会在类型转换的时候用到,然后 app 可能会悲催额崩掉了。其实,我们可以从变量或者属性的声明入手。
我经常看到的一些从 oc 转为 swift 开发的工程师们,在定义变量的时候还是使用的 oc 的方式。比如很常见的 array、dictionary,他们就会这样let arr =NSArray(),基本上所有属性都是这种方式的定义,但问题是,等到我们取出里面的元素使用的时候就要开始类型转换了,崩溃的脚步也就近了。
其实,swift 有自己的定义方式:let dic = [NSString:AnyObject](),像这种,在定义的时候直接给内部元素指定类型,到时候取出来就不用转换了。当然,可以指定明确的类型如 Int,String 等,不明确的如 Any,AnyObject;字典是[NSString:AnyObject],数组包字典是:[[NSString:AnyObject]]。绝对好用。
0 0
- 关于 swift 开发的变量或属性声明的建议(避免类型转换以及带来的强转崩溃问题)
- 类型转换带来的问题
- 类型转换带来的问题
- 关于Swift as类型强转的细节说明
- js变量的声明、类型、以及使用
- 指针变量以及指针变量的类型转换问题
- 关于强类型DataSet的一些小建议
- java泛型中类型擦除以及类型擦除带来的问题
- 避免代理服务器的缓存带来的问题
- 避免代理服务器的缓存带来的问题
- C#的变量以及类型转换
- 这个关于c中break的跳转位置以及声明变量的作用域的问题。
- java中关于static 类型的变量声明与初始化的问题
- [C++] 关于子类声明与父类同名同类型的成员变量的问题
- 关于javascript变量声明、函数声明提升的问题
- 关于数组类型的外部变量的声明
- C++学习之类型转换带来的问题
- 关于如何使用反射声明一个泛型类型变量(泛型参数是动态的)的问题
- 使用http原生包抓取RestAPI接口内容并解析为实体的示例
- hduoj 1002 A + B Problem II(大数加法)
- 顺序栈的基本操作
- java中ArrayList和LinkedList的区别
- Android开发学习总结(一)——搭建最新版本的Android开发环境
- 关于 swift 开发的变量或属性声明的建议(避免类型转换以及带来的强转崩溃问题)
- VM建好后,找不到
- ACM第一次练习—1010K
- 禁忌搜索算法
- javaScript简易运动框架封装——和派孔明
- JAVA动态规划(一)--最少硬币找零问题
- Java之旅--定时任务(Timer、Quartz、Spring、LinuxCron)
- startActivityForResult , onActivityResult , setResult 的用法
- bzoj2654 Tree 二分答案+最小生成树