1.where:在Swift语法里where关键字的作用跟SQL的where一样,条件语句
2.final:防止重写,无法重写基类定义了final的属性和函数(class、func和var前修饰);为了让父类中某些代码一定会执行
3.@discardableResult:取消如果不适用返回值的警告
4.mutating:实例化的时候,实参是不可改变,如果确实需要改的话加 mutating
- convenience:便利构造器
6.lazy懒加载(Object-C的懒加载是当使用时才去开辟空间,set get方法)Swift 懒加载相当于静态空间,只运行一次....只打印一次 a = 1
- inout:通过一个函数改变函数外面变量的值(将一个值类型参数以引用方式传递)
8.fallthrough : swift语言特性switch语句的break可以忽略不写,满足条件时直接跳出循环.fallthrough的作用就是执行完当前case,继续执行下面的case.类似于其它语言中省去break里,会继续往后一个case跑,直到碰到break或default才完成的效果.即在 switch 语句中,明确允许一个 case 执行完继续执行下一个
9.associatedtype:通常作为协议的一部分,为一种类型提供一个占位符。在协议未被遵守之前,这个类型都是未知的。
10.typealias:将现有的类型的命名作为别名。
11.defer:用来执行在程序控制转移到作用域之外之前的代码;即推迟执行相关代码
12.rethrows:表明仅当该函数的一个函数类型的参数抛出错误时,该函数才抛出错误。
13.throw:从当前上下文直接抛出一个错误。throws:表示一个函数、方法或初始化方法可能会抛出一个错误。
14.#available:if、while 和 guard 语句的条件,根据特定的平台,来在运行时查询 API 的可用性。
15.#colorLiteral:playground 字面量,返回一个可交互的颜色选择器来赋值给一个变量。
16.#column:特殊的文字表达式,返回它开始位置的列数。
17.#else:编译条件控制语句,允许程序条件编译一些指定的代码。与 #if 语句结合使用,当条件为真时执行代码的一部分,当相同的条件为假时执行另一部分。
18.#elseif:条件编译控制语句,允许程序条件编译一些指定的代码。与 #if 语句结合使用,在给出的条件为真时,执行这部分的代码。
19.#endif:条件编译控制语句,允许程序条件编译一些指定的代码。用于标记结束需要条件编译的代码。
20.#file:特殊的文字表达式,返回这个文件的名称。
网友评论