
高级运算符 与c语言中的算术运算符不同,Swift中的算术运算符默认是不会溢出的。所以溢出行为都会被捕获并报告为错误。如果想让系统允许溢出行为,可以选择使用Swift中另一套...
扩展 扩展就是向一个已有的类、结构体、枚举类型或者协议类型添加新功能。这包括在没有权限获取原始源代码的情况下扩展类型的能力。扩展和Objective-c中的分类(catego...
可空链式调用 可空链式调用是一种可以请求和调用属性、方法以及下标的过程,它的可空性体现于请求或调用的目标当前可能为空(nil)。如果可空的目标有值,那么调用就会成功;如果选择...
自动引用计数 swift使用自动引用计数(ARC)机制来跟踪和管理你的应用程序的内存。通常情况下,Swift内存管理机制会一直起作用,我们无须自己来考虑内存的管理。ARC会在...
下标脚本 下标脚本 可以定义在类、结构体和枚举这些目标中,可以认为是访问集合(collection),列表(list)或序列(sequence)的快捷方式,使用下标脚本的索...
类和结构体 1.Swift中类和结构体有很多共同点: 定义属性用于存储值 定义方法用于提供功能 定义附属脚本用于访问值 定义构造器用于生成初始化值 通过扩展以增加默认实现的功...
枚举语法 使用enum关键词来创建枚举并且把它们的整个定义放在一对大括号内: eg:下面是枚举表示四个方向 枚举中定义的值(如 North,South,Ease和West)是...
闭包 1.全局函数和嵌套函数实际上时特殊的必包,必包采取如下三种形式之一: 全局函数是一个有名字但不会捕获任何值的必包 嵌套函数是一个有名字并可以捕获其封闭函数区域内值的必包...
函数的定义与调用 1.当我们定义一个函数时,你可以定一个或多个有名字和类型的值,作为函数的输入称为参数;2.当我们可以定义某种类型的值作为函数执行结束的输出称为返回类型;3....
for循环 1.for-in循环对一个集合里面的每个元素执行一系列语句。2.for循环,用来重复执行一系列语句直到达成特定条件达成,一般通过在每次循环完成后增加计数器的值来实...
集合的可变性 如果创建一个数组,集合或者字典并且把它们分配成一个变量,这个集合就将会是可变的。如果我们把它们分配成常量,那么它就是不可变的,它的大小不能被改变。 数组 1.数...
空合运算符 1.空合运算符(a??b)将对可选类型a进行空判断,如果a包含一个值就进行解封,否则就返回默认值b。 2.这个运算符有两个条件: 3.如果a为非空值,那么值b将不...
常量和变量 1.使用let创建常量,使用var创建变量 2.可以同时多声明多个变量或者常量,使用逗号隔开 3.type anotation类型注解 当我们定义变量或者常量时,...