自动推导:var与let类型是根据右侧的代码,自动推导对应类型。在开发中极少使用直接指定类型,通常是自动推导
由于不可变的更安全,一般都是使用let,只有在提示或者需要改变时才修改为var
在swift中不存在基本数据类型,都是结构体
在swift中对类型要求异常严格,不同类型数据之间是不允许直接运算,不允许做默认的隐式转换,只有在所有数据类型一致时才可以相互运算。其中经常使用强制类型转换
类型(xxx)
nil不是任何数据类型,也是不能直接进行运算
if表达式中没有非0即真的情况,所以
if x{}
是错误的,没有这种表达。其中if表达式里声明的var或let数据,作用域只是在{}
中-
guard语句比if语句在解包(Optional)时候,避免在大量串行解包的时候出来叠加。
// guard :在解包之后,a的作用域还可以使用
var a:String? = "aaa"
guard let b = a else { print("a == nil")
print(b)// if :在解包之后,a的作用域只有在{}起作用 var a1:String? = "aaa" if let b = a { print(b)}
-
在swift3.0中,数组基本没什么变化,可以任意类型的元素,也可以自行判断数组的类型,只是如果元素是不一致的类型,需要声明为Any类型
let arr2:Any? = ["aa", "bb", 1, 1.21]
print(arr2)let arr3 = ["aaa", "a", 1, 12.2] as [Any?] print(arr3)
笔记---基础知识
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。