return 的内容。macCatalyst。Self 可以指向当前类,结构体或者枚举声明时的类型。dynamicCallable 属性动态调用实例作为函数的内容。unknown 来处理未来枚举可能发生改变的情形。< 的内容。#error 和 #warning 的内容。inlinable 和 usableFromInline 属性的内容。requires-stored-property-inits 和 warn-unqualified-access 属性的内容。#dsohandle 的内容。canImport() 和 targetEnvironment() 平台条件的内容。where 子句约束关联类型。objc 属性的讨论,现在该属性会在更少的位置被推断出来。final 特性了。available 特性的内容 。type(of:) 是 Swift 标准库函数。 unowned,unowend(safe) 和 unowned(unsafe) 的内容。Any 作为可选值。 open 和 fileprivate 的内容。inout 的讨论,注意它现在出现在参数类型的前面,而不是在参数名称的前面。@noescape 和 @autoclosure 的讨论,现在他们是类型属性,而不是定义属性。while 和 guard 语句使用逗号分隔条件列表,不需要使用 where 语句。type(of:) 表达式的讨论。#sourceLocation(file:line:) 表达式的讨论。Never 类型的讨论。playground 字面量的内容。in-out 参数。@IBAction,@IBOutlet 和 @NSManaged 隐式含有 @objc 属性。@GKInspectable 的内容。Objective-C 交互的代码中才能使用可选协议要求的内容。let 关键字作为函数参数的内容。Boolean 协议的内容, 现在这个协议已经被 Swift 标准库删除。@NSApplicationMain 协议的内容。#selector 语法。associatedtype 关键词修饰关联类型的讨论。nil 的相关内容。@objc 特性的讨论,并指出枚举和枚举用例。. 的讨论。for 循环,++ 前缀和后缀运算符,以及 -- 前缀和后缀运算符。@noescape 属性的相关内容。?? 操作符的例子。ErrorType 协议了。try? 关键字相关内容。guard 语句相关的内容。repeat-while 循环相关的内容。String 类型在 Swift 标准库中不再遵循 CollectionType 协议。print(-:separator:terminator) 相关内容。String 原始值的枚举用例的行为相关内容。@autoclosure 特性的相关内容,包括它的 @autoclosure(escaping) 形式。@avaliable 和 warn-unused-result 特性的相关内容。@convention 特性的相关内容。where 子句进行多可选绑定的相关内容。+ 运算符拼接字符串字面量的相关内容。@NSManaged 特性的讨论,现在这个特性可以被应用到一个确定实例方法。@objc 关键字。throw 语句的性能。在 Do 语句 章节的 do 语句部分也新增了类似内容。willSet 和 didSet 观察器的行为。private 作用域的相关内容说明。Set 集合类型,更多内容,请看 Sets 。@autoclosure 现在是一个参数声明的属性,而不是参数类型的属性。这里还有一个新的参数声明属性 @noescape。更多内容,请看 属性声明 。static 关键字作为声明描述符,更多内容,请看 类型变量属性。as? 和 as! 的向下可失败类型转换运算符。更多内容,请看 协议遵循性检查。&/)和求余溢出运算符(&%)。if语句后面以逗号分隔的赋值列表的方式出现,更多内容,请看 可选绑定。@obj 修饰的协议了。as? 和 as! 运算符,而确保不会失败的类型转换现在使用 as 运算符。更多内容,请看 类型转换运算符。Any 类型现可以包含函数实例。更新了有关 Any 相关的示例来展示如何在 switch 语句中如何检查并转换到一个函数类型。rawValue 属性替代 toRaw() 方法,同时使用了一个以 rawValue 为参数的失败构造器来替代 fromRaw() 方法。更多的内容,请看 原始值 和 带原始值的枚举类型。? 字符,更新了 运算符 涉及改进后的规则的部分,并且在 自定义运算符 章节中删除了重复的运算符有效字符集合。+ 号运算符或者复合加法运算符 += 相互连接,这两种运算符现在只能用于字符串之间相连。请使用 String 类型的 append 方法在一个字符串的尾部增加单个字符。availability 特性的一些内容。true,同样,若无值时,也不再隐式的转换为 false,这是为了避免在判别 optional Bool 的值时产生困惑。 替代的方案是,用== 或 != 运算符显式地去判断 Optinal 是否是 nil,以确认其是否包含值。a ?? b) , 该表达式中,如果 Optional a 的值存在,则取得它并返回,若 Optional a 为 nil,则返回默认值 b+= 运算符给一个数组新增一个新的项。对应的替代方案是,使 append 方法,或者通过 += 运算符来新增一个只有一个项的数组。a..b 和 a..<b ,起始值 a 不能大于结束值 b。description 属性。 (而有关如何在子类的构造器中修改继承属性的默认值的例子,已经被移到 构造过程 篇章。) override 修饰符。required 修饰符现在需要出现在所有子类的 required 构造器的声明中,而 required 构造器的实现,现在可以仅从父类自动继承。@infix 属性。@prefix 和 @postfix 属性,已变更为 prefix 和 postfix 声明修饰符。@assignment 属性来定义函数。修饰符(Modifiers)的出现顺序发生变化。比如现在,你该编写 prefix operator, 而不是 operator prefix。dynamic 声明修饰符的内容。Character 类型代表的是扩展字符集(extended grapheme cluster)中的一个 Unicode,为此,新增了 Extended Grapheme Clusters 章节。同时,Unicode 标量 和 字符串比较 章节新增了更多内容。\u{n}的形式来表示,n 是一个最大可以有8位的16进制数。NSString length 属性已被映射到 Swift 的内建 String类型。(注意,这两属性的类型是utf16Count,而非 utf16count)。String 类型不再拥有 uppercaseString 和 lowercaseString 属性。在 字符串和字符 章节中删除了对应部分,并更新了各种对应的代码用例。@optional, @lazy, @final, @required 等关键字被更新为 optional, lazy, final, required 参见 声明修饰符。..< 的引用,从半闭区间改为了 半开区间。Dictionary 现在增加了一个 Boolean 型的属性:isEmpty。nil 和布尔运算中的 true 和 false 现在被定义为 字面量。Array) 类型从现在起具备了完整的值语义。具体内容被更新到 集合的可变性 和 数组 两小节,以反映这个新的变化。 此外,还解释了如何给 Strings, Arrays 和 Dictionaries 进行赋值和拷贝。SomeType [] 更新为 [SomeType]。[KeyType: ValueType]。sorted 取代原先的全局函数 sort 去展示如何返回一个全新的数组。没有默认值,逐一成员构造器也可以自动获得。.. 更新为 ..<。