语法总结(Summary of the Grammar)


1.0 翻译:stanzhai 校对:xielingwang

2.0 翻译+校对:miaosiqi

4.1 翻译+校对:mylittleswift

本页包含内容:

语句

语句语法

语句表达式 ; 可选 语句声明 ; 可选 语句循环语句 ; 可选 语句分支语句 ; 可选 语句标记语句(Labeled Statement) 语句控制转移语句 ; 可选 语句延迟语句 ; 可选

语句执行语句 ; 可选

多条语句(Statements)语句 多条语句(Statements) 可选

循环语句语法

循环语句for 语句 循环语句for-in 语句 循环语句 → [while 语句](../chapter3/10_Statements.html#wheetatype 类型 ile_statement) 循环语句repeat-while 语句

For 循环语法

for 语句for for 初始条件 可选 ; 表达式 可选 ; 表达式 可选 代码块 for 语句for ( for 初始条件 可选 ; 表达式 可选 ; 表达式 可选 ) 代码块 for 初始条件变量声明 | 表达式集

For-In 循环语法

for-in 语句for case 可选 模式 in 表达式 代码块 where 从句 可选

While 循环语法

while 语句while 条件从句 代码块 条件从句表达式 条件从句表达式 , 表达式集 条件从句表达式集 条件从句可用条件(availability-condition | 表达式集 条件集条件 | 条件 , 条件集 条件可用条件(availability-condition) | 个例条件(case-condition) | 可选绑定条件(optional-binding-condition) 个例条件(case-condition)case 模式 构造器 where 从句可选 可选绑定条件(optional-binding-condition)可选绑定头(optional-binding-head) 可选绑定连续集(optional-binding-continuation-list) 可选 where 从句 可选 可选绑定头(optional-binding-head)let 模式 构造器 | var 模式 构造器 可选绑定连续集(optional-binding-contiuation-list)可选绑定连续(optional-binding-contiuation) | 可选绑定连续(optional-binding-contiuation) 可选绑定连续集(optional-binding-contiuation-list) 可选绑定连续(optional-binding-continuation)模式 构造器 | 可选绑定头(optional-binding-head)

Repeat-While 语句语法

repeat-while-statementrepeat 代码块 while 表达式

分支语句语法

分支语句if 语句 分支语句guard 语句 分支语句switch 语句

If 语句语法

if 语句if 条件从句 代码块 else 从句(Clause) 可选 else 从句(Clause)else 代码块 | else if 语句

Guard 语句语法

guard 语句guard 条件从句 else 代码块

Switch 语句语法

switch 语句switch 表达式 { SwitchCase 可选 } SwitchCase 集SwitchCase SwitchCase 集 可选 SwitchCasecase 标签 多条语句(Statements) | default 标签 多条语句(Statements) SwitchCasecase 标签 ; | default 标签 ; case 标签case case 项集 : case 项集模式 where-clause 可选 | 模式 where-clause 可选 , case 项集 default 标签default : where 从句where where 表达式 where 表达式表达式

标记语句语法

标记语句(Labeled Statement)语句标签 循环语句 | 语句标签 if 语句 | 语句标签 switch 语句 语句标签标签名称 : 标签名称标识符

控制传递语句(Control Transfer Statement)语法

控制传递语句break 语句 控制传递语句continue 语句 控制传递语句fallthrough 语句 控制传递语句return 语句 控制传递语句throw 语句

Break 语句语法

break 语句break 标签名称 可选

Continue 语句语法

continue 语句continue 标签名称 可选

Fallthrough 语句语法

fallthrough 语句fallthrough

Return 语句语法

return 语句return 表达式 可选

可用条件(Availability Condition)语法

可用条件(availability-condition)#available ( 多可用参数(availability-arguments) ) 多可用参数(availability- arguments)可用参数(availability-argument)|可用参数(availability-argument) , 多可用参数(availability-arguments) 可用参数(availability- argument)平台名(platform-name) 平台版本(platform-version) 可用参数(availability- argument) → *

平台名iOS | iOSApplicationExtension 平台名OSX | macOSApplicationExtension 平台名watchOS 平台名tvOS 平台版本十进制数(decimal-digits) 平台版本十进制数(decimal-digits) . 十进制数(decimal-digits) 平台版本十进制数(decimal-digits) . 十进制数(decimal-digits) . 十进制数(decimal-digits))

抛出语句(Throw Statement)语法

抛出语句(throw-statement)throw 表达式(expression)

延迟语句(defer-statement)语法

延迟语句(defer-statement)defer 代码块

执行语句(do-statement)语法

执行语句(do-statement)do 代码块 catch-clauses 可选 catch-clausescatch-clause catch-clauses 可选 catch-clausescatch 模式(pattern) 可选 where-clause 可选 代码块(code-block) 可选

泛型参数

泛型形参从句(Generic Parameter Clause)语法

泛型参数从句< 泛型参数集 约束从句 可选 > 泛型参数集泛形参数 | 泛形参数 , 泛型参数集 泛形参数类型名称 泛形参数类型名称 : 类型标识 泛形参数类型名称 : 协议合成类型 约束从句where 约束集 约束集约束 | 约束 , 约束集 约束一致性约束 | 同类型约束 一致性约束类型标识 : 类型标识 一致性约束类型标识 : 协议合成类型 同类型约束类型标识 == 类型

泛型实参从句语法

(泛型参数从句 Generic Argument Clause)< 泛型参数集 > 泛型参数集泛型参数 | 泛型参数 , 泛型参数集 泛型参数类型

声明(Declarations)

声明语法

声明导入声明 声明常量声明 声明变量声明 声明类型别名声明 声明函数声明 声明枚举声明 声明结构体声明 声明类声明 声明协议声明 声明构造器声明 声明析构器声明 声明扩展声明 声明下标声明 声明运算符声明 声明(Declarations)集声明 声明(Declarations)集 可选

顶级(Top Level)声明语法

顶级声明多条语句(Statements) 可选

代码块语法

代码块{ 多条语句(Statements) 可选 }

导入(Import)声明语法

导入声明属性(Attributes)集 可选 import 导入类型 可选 导入路径 导入类型typealias | struct | class | enum | protocol | var | func 导入路径导入路径标识符 | 导入路径标识符 . 导入路径 导入路径标识符标识符 | 运算符

常数声明语法

常量声明属性(Attributes)集 可选 声明修改符(Modifiers)集 可选 let 模式构造器集 模式构造器集模式构造器 | 模式构造器 , 模式构造器集 模式构造器 → [模式](../ chapter3/07_Patterns.html#pattern) 构造器 可选 构造器= 表达式

变量声明语法

变量声明变量声明头(Head) 模式构造器集 变量声明变量声明头(Head) 变量名 类型注解 代码块 变量声明变量声明头(Head) 变量名 类型注解 getter-setter 块 变量声明变量声明头(Head) 变量名 类型注解 getter-setter 关键字(Keyword)块 变量声明变量声明头(Head) 变量名 类型注解 构造器 可选 willSet-didSet 代码块 变量声明头(Head)属性(Attributes)集 可选 声明修改符(Modifers)集 可选 var 变量名称标识符 getter-setter 块{ getter 从句 setter 从句 可选 } getter-setter 块{ setter 从句 getter 从句 } getter 从句属性(Attributes)集 可选 get 代码块 setter 从句属性(Attributes)集 可选 set setter 名称 可选 代码块 setter 名称( 标识符 ) getter-setter 关键字(Keyword)块{ getter 关键字(Keyword)从句 setter 关键字(Keyword)从句 可选 } getter-setter 关键字(Keyword)块{ setter 关键字(Keyword)从句 getter 关键字(Keyword)从句 } getter 关键字(Keyword)从句属性(Attributes)集 可选 get setter 关键字(Keyword)从句属性(Attributes)集 可选 set willSet-didSet 代码块{ willSet 从句 didSet 从句 可选 } willSet-didSet 代码块{ didSet 从句 willSet 从句 } willSet 从句属性(Attributes)集 可选 willSet setter 名称 可选 代码块 didSet 从句属性(Attributes)集 可选 didSet setter 名称 可选 代码块

类型别名声明语法

类型别名声明类型别名头(Head) 类型别名赋值 类型别名头(Head)属性 可选 访问级别修改符(access-level-modifier) typealias 类型别名名称 类型别名名称标识符 类型别名赋值= 类型

函数声明语法

函数声明函数头 函数名 泛型参数从句 可选 函数签名(Signature) 函数体 函数头属性(Attributes)集 可选 声明描述符(Specifiers)集 可选 func 函数名标识符 | 运算符 函数签名(Signature)parameter-clauses throws 可选 函数结果 可选

函数签名(Signature)parameter-clauses rethrows 函数结果 可选 函数结果-> 属性(Attributes)集 可选 类型 函数体代码块 参数从句参数从句 parameter-clauses 可选 参数从句( ) | ( 参数集 ... 可选 ) 参数集参数 | 参数 , 参数集 参数inout 可选 let 可选 外部参数名 可选 本地参数名 可选 类型注解 默认参数从句 可选 参数inout 可选 var 外部参数名 本地参数名 可选 类型注解 默认参数从句 可选 参数属性(Attributes)集 可选 类型 外部参数名标识符 | _ 本地参数名标识符 | _ 默认参数从句= 表达式

枚举声明语法

枚举声明属性(Attributes)集 可选 访问级别修改器(access-level-modifier) 可选 联合式枚举 枚举声明属性(Attributes)集 可选 访问级别修改器(access-level-modifier) 可选 原始值式枚举(raw-value-style-enum) 联合式枚举enum 枚举名 泛型参数从句 可选 类型继承从句(type-inheritance-clause) 可选 { 联合样式枚举成员 可选 } 联合样式枚举成员union-style-enum-member 联合样式枚举成员 可选 联合样式枚举成员声明 | 联合式(Union Style)的枚举 case 从句 联合式(Union Style)的枚举 case 从句属性(Attributes)集 可选 case 联合式(Union Style)的枚举 case 集 联合式(Union Style)的枚举 case 集联合式(Union Style)的 case | 联合式(Union Style)的 case , 联合式(Union Style)的枚举 case 集 联合式(Union Style)的枚举 case枚举的 case 名 元组类型 可选 枚举名标识符 枚举的 case 名标识符 原始值式枚举enum 枚举名 泛型参数从句 可选 : 类型标识 { 原始值式枚举成员集 可选 } 原始值式枚举成员集原始值式枚举成员 原始值式枚举成员集 可选 原始值式枚举成员声明 | 原始值式枚举 case 从句 原始值式枚举 case 从句属性(Attributes)集 可选 case 原始值式枚举 case 集 原始值式枚举 case 集原始值式枚举 case | 原始值式枚举 case , 原始值式枚举 case 集 原始值式枚举 case枚举的 case 名 原始值赋值 可选 原始值赋值= 字面量 原始值字面量(raw-value-literal)数值字面量 | 字符串字面量 | 布尔字面量

结构体声明语法

结构体声明属性(Attributes)集 可选 访问级别修改器(access-level-modifier) 可选 struct 结构体名称 泛型参数从句 可选 类型继承从句 可选 结构体主体 结构体名称标识符 结构体主体{ 声明(Declarations)集 可选 }

类声明语法

类声明属性(Attributes)集 可选 访问级别修改器(access-level-modifier) class 类名 泛型参数从句 可选 类型继承从句 可选 类主体 类名标识符 类主体{ 声明(Declarations)集 可选 }

协议(Protocol)声明语法

协议声明属性(Attributes)集 可选访问级别修改器(access-level-modifier) protocol 协议名 类型继承从句 可选 协议主体 协议名标识符 协议主体{ 协议成员声明(Declarations)集 可选 } 协议成员声明协议属性声明 协议成员声明协议方法声明 协议成员声明协议构造器声明 协议成员声明协议下标声明 协议成员声明协议关联类型声明 协议成员声明(Declarations)集协议成员声明 协议成员声明(Declarations)集 可选

协议属性声明语法

协议属性声明变量声明头(Head) 变量名 类型注解 getter-setter 关键字(Keyword)块

协议方法声明语法

协议方法声明函数头 函数名 泛型参数从句 可选 函数签名(Signature)

协议构造器声明语法

协议构造器声明构造器头(Head) 泛型参数从句 可选 参数从句

协议下标声明语法

协议下标声明下标头(Head) 下标结果(Result) getter-setter 关键字(Keyword)块

协议关联类型声明语法

协议关联类型声明类型别名头(Head) 类型继承从句 可选 类型别名赋值 可选

构造器声明语法

构造器声明构造器头(Head) 泛型参数从句 可选 参数从句 构造器主体 构造器头(Head)属性(Attributes)集 可选 声明修改器集(declaration-modifiers) 可选 init 构造器头(Head)属性(Attributes)集 可选 声明修改器集(declaration-modifiers) 可选 init ? 构造器头(Head)属性(Attributes)集 可选 声明修改器集(declaration-modifiers) 可选 init ! 构造器主体代码块

析构器声明语法

析构器声明属性(Attributes)集 可选 deinit 代码块

扩展(Extension)声明语法

扩展声明访问级别修改器 可选 extension 类型标识 类型继承从句 可选 extension-body extension-body{ 声明(Declarations)集 可选 }

下标声明语法

下标声明下标头(Head) 下标结果(Result) 代码块 下标声明下标头(Head) 下标结果(Result) getter-setter 块 下标声明下标头(Head) 下标结果(Result) getter-setter 关键字(Keyword)块 下标头(Head)属性(Attributes)集 可选 声明修改器(declaration-modifiers) 可选 subscript 参数从句 下标结果(Result)-> 属性(Attributes)集 可选 类型

运算符声明语法

运算符声明前置运算符声明 | 后置运算符声明 | 中置运算符声明 前置运算符声明prefix 运算符 运算符 { } 后置运算符声明postfix 运算符 运算符 { } 中置运算符声明infix 运算符 运算符 { 中置运算符属性集 可选 } 中置运算符属性集优先级从句 可选 结和性从句 可选 优先级从句precedence 优先级水平 优先级水平 → 数值 0 到 255,首末项包括在内 结和性从句associativity 结和性 结和性left | right | none

声明修改器语法

声明修改器 | 便捷(convenience) | 动态(dynamic) | final | 中置(infix) | lazy | 可变(mutating) | 不可变(nonmutating) | 可选(optional) | 改写(override) | 后置 | 前置 | required | static | unowned | unowned(safe) | unowned(unsafe) | 弱(weak) 声明修改器访问级别声明器(access-level-modifier) 声明修改集声明修改器 声明修改器集 可选 访问级别修改器内部的 | 内部的(set) 访问级别修改器私有的 | 私有的(set) 访问级别修改器公共的 | 公共的(set) 访问级别修改器集访问级别修改器 访问级别修改器集 可选

模式

模式(Patterns)语法

模式通配符模式 类型注解 可选 模式标识符模式 [类型注解](../chapter3/03_Types.html#type_annotati Value Bindingon ) 可选 模式值绑定模式 模式元组模式 类型注解 可选

模式枚举个例模式 模式可选模式 模式类型转换模式 模式表达式模式

通配符模式语法

通配符模式_

标识符模式语法

标识符模式标识符

值绑定(Value Binding)模式语法

值绑定模式var 模式 | let 模式

元组模式语法

元组模式( 元组模式元素集 可选 ) 元组模式元素集元组模式元素 | 元组模式元素 , 元组模式元素集 元组模式元素模式

枚举用例模式语法

enum-case-pattern类型标识 可选 . 枚举的 case 名 元组模式 可选

可选模式语法

可选模式识别符模式 ?

类型转换模式语法

类型转换模式(type-casting-pattern)is 模式 | as 模式 is 模式is 类型 as 模式模式 as 类型

表达式模式语法

表达式模式表达式

属性

属性语法

属性@ 属性名 属性参数从句 可选 属性名标识符 属性参数从句( 平衡令牌集 可选 ) 属性(Attributes)集属性 属性(Attributes)集 可选 平衡令牌集平衡令牌 平衡令牌集 可选 平衡令牌( 平衡令牌集 可选 ) 平衡令牌[ 平衡令牌集 可选 ] 平衡令牌{ 平衡令牌集 可选 } 平衡令牌任意标识符、关键字、字面量或运算符 平衡令牌任意标点除了(、)、[、]、{ 或 }

表达式

表达式语法

表达式try-operator 可选 前置表达式 二元表达式集 可选 表达式集表达式 | 表达式 , 表达式集

前置表达式语法

前置表达式前置运算符 可选 后置表达式 前置表达式写入写出(in-out)表达式 写入写出(in-out)表达式& 标识符

try 表达式语法

try-operatortry | try !

二元表达式语法

二元表达式二元运算符 前置表达式 二元表达式赋值运算符 try 运算符 可选 前置表达式 二元表达式条件运算符 try 运算符 可选 前置表达式 二元表达式类型转换运算符 二元表达式集二元表达式 二元表达式集 可选

赋值运算符语法

赋值运算符=

三元条件运算符语法

三元条件运算符? 表达式 :

类型转换运算符语法

类型转换运算符is 类型 类型转换运算符as 类型 类型转换运算符as ? 类型 类型转换运算符as ! 类型

主表达式语法

主表达式标识符 泛型参数从句 可选 主表达式字面量表达式 主表达式self 表达式 主表达式超类表达式 主表达式闭包表达式 主表达式圆括号表达式 主表达式隐式成员表达式 主表达式通配符表达式

字面量表达式语法

字面量表达式字面量 字面量表达式数组字面量 | 字典字面量 字面量表达式__FILE__ | __LINE__ | __COLUMN__ | __FUNCTION__ 数组字面量[ 数组字面量项集 可选 ] 数组字面量项集数组字面量项 , 可选 | 数组字面量项 , 数组字面量项集 数组字面量项表达式 字典字面量[ 字典字面量项集 ] | [** : **] 字典字面量项集字典字面量项 , 可选 | 字典字面量项 , 字典字面量项集 字典字面量项表达式 : 表达式

Self 表达式语法

self 表达式self self 表达式self . 标识符 self 表达式self [ 表达式 ] self 表达式self . init

超类表达式语法

超类表达式超类方法表达式 | 超类下标表达式 | 超类构造器表达式 超类方法表达式super . 标识符 超类下标表达式super [ 表达式 ] 超类构造器表达式super . init

闭包表达式语法

闭包表达式{ 闭包签名(Signational) 可选 多条语句(Statements) } 闭包签名(Signational)参数从句 函数结果 可选 in 闭包签名(Signational)标识符集 函数结果 可选 in 闭包签名(Signational)捕获(Capature)集 参数从句 函数结果 可选 in 闭包签名(Signational)捕获(Capature)集 标识符集 函数结果 可选 in 闭包签名(Signational)捕获(Capature)集 in 捕获(Capature)集[ 捕获(Capature)说明符 表达式 ] 捕获(Capature)说明符weak | unowned | unowned(safe) | unowned(unsafe)

隐式成员表达式语法

隐式成员表达式. 标识符

圆括号表达式(Parenthesized Expression)语法

圆括号表达式( 表达式元素集 可选 ) 表达式元素集表达式元素 | 表达式元素 , 表达式元素集 表达式元素表达式 | 标识符 : 表达式

通配符表达式语法

通配符表达式_

后置表达式语法

后置表达式主表达式 后置表达式后置表达式 后置运算符 后置表达式函数调用表达式 后置表达式构造器表达式 后置表达式显示成员表达式 后置表达式后置 self 表达式 后置表达式动态类型表达式 后置表达式下标表达式 后置表达式强制取值(Forced Value)表达式 后置表达式可选链(Optional Chaining)表达式

函数调用表达式语法

函数调用表达式后置表达式 圆括号表达式 函数调用表达式后置表达式 圆括号表达式 可选 后置闭包(Trailing Closure) 后置闭包(Trailing Closure)闭包表达式

构造器表达式语法

构造器表达式后置表达式 . init

显式成员表达式语法

显示成员表达式后置表达式 . 十进制数字 显示成员表达式后置表达式 . 标识符 泛型参数从句 可选

后置 Self 表达式语法

后置 self 表达式后置表达式 . self

动态类型表达式语法

动态类型表达式后置表达式 . dynamicType

附属脚本表达式语法

附属脚本表达式后置表达式 [ 表达式集 ]

强制取值(Forced Value)语法

强制取值(Forced Value)表达式后置表达式 !

可选链表达式语法

可选链表达式后置表达式 ?

词法结构

标识符语法

标识符标识符头(Head) 标识符字符集 可选 标识符标识符头(Head) 标识符字符集 可选 标识符隐式参数名 标识符集标识符 | 标识符 , 标识符集 标识符头(Head) → Upper- or lowercase letter A through Z 标识符头(Head) → _ 标识符头(Head) → U+00A8, U+00AA, U+00AD, U+00AF, U+00B2–U+00B5, or U+00B7–U+00BA 标识符头(Head) → U+00BC–U+00BE, U+00C0–U+00D6, U+00D8–U+00F6, or U+00F8–U+00FF 标识符头(Head) → U+0100–U+02FF, U+0370–U+167F, U+1681–U+180D, or U+180F–U+1DBF 标识符头(Head) → U+1E00–U+1FFF 标识符头(Head) → U+200B–U+200D, U+202A–U+202E, U+203F–U+2040, U+2054, or U+2060–U+206F 标识符头(Head) → U+2070–U+20CF, U+2100–U+218F, U+2460–U+24FF, or U+2776–U+2793 标识符头(Head) → U+2C00–U+2DFF or U+2E80–U+2FFF 标识符头(Head) → U+3004–U+3007, U+3021–U+302F, U+3031–U+303F, or U+3040–U+D7FF 标识符头(Head) → U+F900–U+FD3D, U+FD40–U+FDCF, U+FDF0–U+FE1F, or U+FE30–U+FE44 标识符头(Head) → U+FE47–U+FFFD 标识符头(Head) → U+10000–U+1FFFD, U+20000–U+2FFFD, U+30000–U+3FFFD, or U+40000–U+4FFFD 标识符头(Head) → U+50000–U+5FFFD, U+60000–U+6FFFD, U+70000–U+7FFFD, or U+80000–U+8FFFD 标识符头(Head) → U+90000–U+9FFFD, U+A0000–U+AFFFD, U+B0000–U+BFFFD, or U+C0000–U+CFFFD 标识符头(Head) → U+D0000–U+DFFFD or U+E0000–U+EFFFD 标识符字符 → 数值 0 到 9 标识符字符 → U+0300–U+036F, U+1DC0–U+1DFF, U+20D0–U+20FF, or U+FE20–U+FE2F 标识符字符标识符头(Head) 标识符字符集标识符字符 标识符字符集 可选 隐式参数名$ 十进制数字集

字面量语法

字面量数值型字面量 | 字符串字面量 | 布尔字面量 | 空字面量 数值型字面量- 可选 整形字面量 | - 可选 浮点型字面量 布尔字面量true | false 空字面量nil

整型字面量语法

整型字面量二进制字面量 整型字面量八进制字面量 整型字面量十进制字面量 整型字面量十六进制字面量 二进制字面量0b 二进制数字 二进制字面量字符集 可选 二进制数字 → 数值 0 到 1 二进制字面量字符二进制数字 | _ 二进制字面量字符集二进制字面量字符 二进制字面量字符集 可选 八进制字面量0o 八进制数字 八进制字符集 可选 八进字数字 → 数值 0 到 7 八进制字符八进制数字 | _ 八进制字符集八进制字符 八进制字符集 可选 十进制字面量十进制数字 十进制字符集 可选 十进制数字 → 数值 0 到 9 十进制数字集十进制数字 十进制数字集 可选 十进制字面量字符十进制数字 | _ 十进制字面量字符集十进制字面量字符 十进制字面量字符集 可选 十六进制字面量0x 十六进制数字 十六进制字面量字符集 可选 十六进制数字 → 数值 0 到 9, a through f, or A through F 十六进制字符十六进制数字 | _ 十六进制字面量字符集十六进制字符 十六进制字面量字符集 可选

浮点型字面量语法

浮点数字面量十进制字面量 十进制分数 可选 十进制指数 可选 浮点数字面量十六进制字面量 十六进制分数 可选 十六进制指数 十进制分数. 十进制字面量 十进制指数浮点数 e 正负号 可选 十进制字面量 十六进制分数. 十六进制数 十六进制字面量字符集可选 十六进制指数浮点数 p 正负号 可选 十六进制字面量 浮点数 ee | E 浮点数 pp | P 正负号+ | -

字符串型字面量语法

字符串字面量" 引用文本 " 引用文本引用文本条目 引用文本 可选 引用文本条目转义字符 引用文本条目( 表达式 ) 引用文本条目 → 除了"­, \­, U+000A, or U+000D 的所有 Unicode 的字符 转义字符/0 | \ | \t | \n | \r | " | ' 转义字符\u { 十六进制标量数字集 } unicode 标量数字集 → Between one and eight hexadecimal digits

运算符语法语法

运算符运算符头 运算符字符集 可选 运算符点运算符头 点运算符字符集 可选 运算符字符/ | = | - | + | ! | * | % | < | > | & | | | ^ | ~ | ? 运算符头 → U+00A1–U+00A7 运算符头 → U+00A9 or U+00AB 运算符头 → U+00AC or U+00AE 运算符头 → U+00B0–U+00B1, U+00B6, U+00BB, U+00BF, U+00D7, or U+00F7 运算符头 → U+2016–U+2017 or U+2020–U+2027 运算符头 → U+2030–U+203E 运算符头 → U+2041–U+2053 运算符头 → U+2055–U+205E 运算符头 → U+2190–U+23FF 运算符头 → U+2500–U+2775 运算符头 → U+2794–U+2BFF 运算符头 → U+2E00–U+2E7F 运算符头 → U+3001–U+3003 运算符头 → U+3008–U+3030 运算符字符运算符头 运算符字符 → U+0300–U+036F 运算符字符 → U+1DC0–U+1DFF 运算符字符 → U+20D0–U+20FF 运算符字符 → U+FE00–U+FE0F 运算符字符 → U+FE20–U+FE2F 运算符字符 → U+E0100–U+E01EF 运算符字符集运算符字符 运算符字符集可选 点运算符头.. 点运算符字符. | 运算符字符 点运算符字符集点运算符字符 点运算符字符集 可选 二元运算符运算符 前置运算符运算符 后置运算符运算符

类型

类型语法

类型数组类型 | 字典类型 | 函数类型 | 类型标识符 | 元组类型 | 可选类型 | 隐式解析可选类型 | 协议合成类型 | 元型类型

类型注解语法

类型注解: 属性(Attributes)集 可选 类型

类型标识语法

类型标识类型名称 泛型参数从句 可选 | 类型名称 泛型参数从句 可选 . 类型标识符 类型名标识符

元组类型语法

元组类型( 元组类型主体 可选 ) 元组类型主体元组类型的元素集 ... 可选 元组类型的元素集元组类型的元素 | 元组类型的元素 , 元组类型的元素集 元组类型的元素属性(Attributes)集 可选 inout 可选 类型 | inout 可选 元素名 类型注解 元素名标识符

函数类型语法

函数类型类型 throws 可选 -> 类型 函数类型类型 rethrows -> 类型

数组类型语法

数组类型[ 类型 ]

字典类型语法

字典类型[ 类型 : 类型 ]

可选类型语法

可选类型类型 ?

隐式解析可选类型(Implicitly Unwrapped Optional Type)语法

隐式解析可选类型类型 !

协议合成类型语法

协议合成类型protocol < 协议标识符集 可选 > 协议标识符集协议标识符 | 协议标识符 , 协议标识符集 协议标识符类型标识符

元(Metatype)类型语法

元类型类型 . Type | 类型 . Protocol

类型继承从句语法

类型继承从句: 类条件(class-requirement)) , 类型继承集 类型继承从句: 类条件(class-requirement)) 类型继承从句: 类型继承集 类型继承集类型标识符 | 类型标识符 , 类型继承集 类条件class


书籍推荐