• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

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

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

我的博客地址: sunquan.club

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

可选变量

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

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

如图所示, 如果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 "声明可变集合.

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

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

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

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

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

集合操作

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

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

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

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

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

集合成员关系

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

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

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

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

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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Swift5.4语言指南(二十一)嵌套类型发布时间:2022-07-13
下一篇:
算法与数据结构(十四) 堆排序 (Swift 3.0版)发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap