转载

#从零开始学SWIFT2.0# NO.5 可选变量和集合

我的博客地址: sunquan.club

代码Github地址 : https://github.com/developerSunquan/SwiftStudyNotes

可选变量

可选变量是用来处理值可能缺失的.可选变量可以表示为: 有值, 等于值; 无值, 这两种.

可选变量的表示形式是在类型后加" ? "的形式.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

如图所示, 如果possibleStr可以由String类型转化为Int类型, 则optInt的值为possibleStr转化为Int类型的值; 反之, possibleStr不能由String类型转化为Int类型, 则optInt无值.

nil

Swift的nil和Objective - C中的nil并不一样. 在Objective - C 中, nil是一个指向不存在对象的指针, 而在Swift中, nil并不是指针, 它是一个确定的值, 用来表示值缺失. 任何类型的可选状态都可以被设置为nil, 不单单是对象类型.

集合

集合" Set " 是无序无重复数据的集. 当集合元素顺序不重要时或者希望确保每个元素只出现一次时可以使用集合而不是数组.

集合与字典和数组类似, 分为可变集合和不可变集合. 同样的使用" let "声明不可变集合, 使用" var "声明可变集合.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

同样的可以使用isEmpty或count == 0 来判断集合是否为空.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

使用insert添加元素, 使用remove移除元素.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

可以使用contains方法检查集合中是否包含一个特定的值, 这是集合独有的.

同样的使用for-in可以遍历集合

#从零开始学SWIFT2.0# NO.5 可选变量和集合

不过可以通过sort方法在遍历时给集合排序.

集合操作

通过集合操作可以高效的完成集合的一些基本操作, 比如把两个集合组合到一起, 判断两个集合共有元素, 判断两个集合是否全包含, 部分包含或者不想交等.  下图描述了两个集合a和b以及通过阴影部分的区域显示集合各种操作的结果.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

1. 使用intersect方法根据两个集合中都包含的值创建一个新的集合.

2. 使用exclusiveOr方法根据阿紫一个集合中但不在两个集合中创建一个新的集合.

3.使用union方法根据两个集合的值创建一个新的集合.

4. 使用subtract方法根据不在该集合中的值创建一个新的集合.

#从零开始学SWIFT2.0# NO.5 可选变量和集合

集合成员关系

1. 使用" == "来判断两个集合是否包含全部相同的值.

2. 使用isSubsetOf方法来判断一个集合中的值是否也被包含在另外一个集合中

3. 使用isSupersetOf方法来判断一个集合中包含另一个集合中所有的值

4. 使用isStrictSubsetOf或者isStrictSupersetOf方法来判断一个集合是否是另外一个集合的子集合或者父集合并且两个集合并不相等

5. 使用isDisjointWith方法来判断两个集合是否不含有相同的值

#从零开始学SWIFT2.0# NO.5 可选变量和集合

正文到此结束
Loading...