在Swift中可以通过实现Equatable协议使自定义类型支持==以及!=这两种运算符;Comparable协议...[作者空间]
在Swift中,由于值类型在传递过程会创建新的副本,所以你不需要做任何事情管理值类型的内存;而引用类型则不一样,它...[作者空间]
在Swift中进行面向对象编程时,尽量使用协议和泛型,而不是类继承,因为过深的继承层次很容易让代码充满难以理解的类...[作者空间]
泛型能让我们使用的类型和函数使用未知的类型,许多内置类型,例如可空类型,数组和字典都是用泛型实现的。 泛型类型 下...[作者空间]
扩展能给已有的类型(即使没有源代码)添加功能,包括计算属性,协议,初始化方法,新方法,嵌入类型,注意,扩展不允许添...[作者空间]
错误分为可恢复的错误和不可恢复的错误,可恢复的错误指的是能预见并处理的错误,例如文件不存在,网络连接失败等;不可恢...[作者空间]
Swift中的协议类似于Java中的接口,不过在Swift中,结构体,枚举,类都能使用协议 基本用法 符合多个协议...[作者空间]
Swift中Array,Dictionary,Int,String等都是用结构体来实现的,所以这些都是值类型,而C...[作者空间]
结构体的默认初始化 swift为结构体提供了默认初始化方法,当结构体所有属性都有默认值时,可以使用空白初始化方法 ...[作者空间]
属性分为存储属性与计算属性,存储属性可以有默认值,计算属性则根据已有信息返回某种计算结果。类,结构体,枚举都可以有...[作者空间]
结构体 结构体由属性和方法构成,其中属性可以是变量或者常量,可以在定义的时候给出属性的默认值 和枚举类型一样,结构...[作者空间]
定义枚举类型 定义的语法和C/C++很像,只不过前面多了case语句 创建枚举实例 第一次创建枚举实例的时候必须指...[作者空间]
闭包(closure)是一种更加紧凑,轻量的匿名函数,类似于Java中的lambda表达式 swift中的闭包语法...[作者空间]
最简单的函数 带参数的函数 外部参数 swift中参数名可以填两个,前者是外部参数名(调用者使用),后者是内部参数...[作者空间]
集合也是一种无序容器类型,且集合中的元素不能有重复的,适用于黑名单,白名单等需要快速查找的地方 创建集合 给集合添...[作者空间]
字典是一种无序的容器类型,其中的元素为键值对(key-value pair),其中键类型必须是可散列的,swift...[作者空间]
创建数组 访问和修改数组元素 获取数组元素数量 添加和删除数组元素 遍历数组 使用加法添加一个数组到另外一个数组 ...[作者空间]
在C++和Java中对象有可能为nil,但是在swift中对象一般不能为nil,除非是可空类型同时swift提供了...[作者空间]
在Swift中,String由字符构成,而字符由一个或多个Unicode标量构成 遍历字符串字符 判断字符串是否为...[作者空间]
圆括号 在条件判断以及循环中,大多数圆括号都可以省略掉 if语句 Swift中的if语句和C/C++一样,只不过多...[作者空间]