swift -- 集合

//注意:集合中的元素是无序的,并且不想数组,字典那样,没有索引和键.

1.创建一个空集合

var set1 : Set<Int> = Set<Int>()

2.用字面量创建集合

var set2 : Set<Int> = [1,2,3,4,5]

3.获取集合中元素个数

print(set2.count)

4.集合是否为空

print(set.isEmpty)

5.向集合中添加元素

set2.insert(10)

set2.insert(11)

6.删除集合中的某个元素

set2.remove(5)  //删除集合中的5

7.遍历结合

for i in set2{

print( i )

}

8.有序遍历集合(小--->大)

for i in set2.sort(){

print( i )

}

9.判断集合是否包含某个值

print(set2.contains(2))

10.集合的操作

var set3 : Set<Int> = [1,2,3,4,]

var set4 : Set<Int> = [2,4,6,8]

//a.使用intersect(_:)方法根据两个集合中都包含的值创建的一个新的集合-----交集

var set5 : Set<Int> = set3.intersect(set4)

//b.使用exclusiveOr(_:)方法根据在一个集合中但不在两个集合中的值创建一个新的集合。--- 除交集以外的元素

var set6 : Set<Int> = set3.exclusive(set4)

//c.使用union(_:)方法根据两个集合的值创建一个新的集合。--- 并集

var set7 : Set<Int> = set3.union(set4)

//d.使用subtract(_:)方法根据不在该集合中的值创建一个新的集合。

var set8 :Set<Int> = set3.subtract(set4)

11.集合之间的关系

var set9 :Set<Int> = [1,2,3,4,5]

var set10 :Set<Int> = [1,2,3,4,5]

var set11 :Set<Int> = [1,2,3,4,5,6,7,8]

//a 元素是否相同

print(set9 == set10)

//b 是否是子集合(被包含)

print(set10.isSubsetOf(set11))

//c 是否是父集合(包含)

print(set11.isSupersetOf(set10))

//d 是否是子/父结合,并且两集合不相等

print(set10.isStrictSubsetOf(set11))

//e 判断是否没有交集

print(set10.isDisjointWith(set11))

swift -- 集合的更多相关文章

  1. 浅谈Swift集合类型

    Swift 的集合表现形式由数组和字典组成.它可以完美的存储任何呢想存储的东西. 数组是一个同类型的序列化列表集合,它用来存储相同类型的不同值.字典也是一个数组,但它的存值方式类似于Map,通过一对一 ...

  2. swift 集合类型(二)

    说到swift的集合类型,就不得不谈到Dictionary.包含一个键值对组合的集合. var air = ["name":"warner","tit ...

  3. Swift 集合类型

     Swift语言提供数组和字典的集合类型  Swift 语言里的数组和字典中存储的数据值类型必须明确 ,即数组中只能存放同类型的数据. 1: 数组 数组的创建 var shoppingList: St ...

  4. 6.Swift教程翻译系列——Swift集合类型

    英文版PDF下载地址http://download.csdn.net/detail/tsingheng/7480427 Swift提供数组和字典两种集合类型.用来存储很多值的情况.数组有序的存储一组同 ...

  5. swift 集合类型(一)

    基本的数组结构Array: var shoppingList: String[] = ["Eggs", "Milk"] 这个shoppingList和传统意义上 ...

  6. 学习swift从青铜到王者之Swift集合数据类型03

    1 数组的定义 var array1 = [,,,] var array2: Array = [,,,] var array3: Array<Int> = [,,,] var array4 ...

  7. iOS ---Swift学习与复习

    swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...

  8. Swift互用性:与 Cocoa 数据类型共舞(Swift 2.0版)-b

    本节内容包括: 字符串(Strings) 数值(Numbers) 集合类(Collection Classes) 错误(Errors) Foundation数据类型(Foundation Data T ...

  9. Swift学习与复习

    swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...

随机推荐

  1. Redis缓存数据之简单逻辑

    并发不高的情况: 读: 读redis->没有,读DataBase->把DB数据写回redis,有的话直接从redis中取: 写: 写DataBase->成功,再写redis: 并发高 ...

  2. Codeforces374B

    B. Inna and Nine time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  3. HDU5842

    Lweb and String Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  4. A+B problem (High-precision)

    The "A+B problem" is very easy,but I failed for many times. The code: #include<iostream ...

  5. C++ 头文件系列(iterator)

    简介 该头文件围绕迭代器展开,定义了一系列与迭代器有关的概念,但最最最重要的一点就是----它和其它容器一起实现了C++容器的Iterator设计模式. Iterators are a general ...

  6. 使用JDBC连接数据库(一)

    JDBC是由java编程语言编写的类及接口组成,同时它为程序开发人员提供了一组用于实现对数据库访问的JDBC API,并支持SQL语言.利用JDBC可以将JAVA代码连接到oracle.DB2.SQL ...

  7. CSS Flexbox 学习指南、工具与框架

    Flexbox 是一种更有效的布局方式,它能更好的分配容器空间,并控制项目的对齐.虽然,掌握它的理论有些复杂,但幸运的是,我们可以借助开放的网络来学习并逐步掌握它. 在本文中,我们整合了一些最佳的 F ...

  8. webpack1.x 升级到 webpack2.x 英文文档翻译

    近日项目要升级到webpack2.2,原来使用的webpack版本是1.12,在升级项目的同时,翻译一下官方的升级文档,去掉了一些不常用的配置 resolve.root, resolve.fallba ...

  9. Debug和Release区别

    VC下Debug和Release区别 最近写代码过程中,发现 Debug 下运行正常,Release 下就会出现问题,百思不得其解,而Release 下又无法进行调试,于是只能采用printf方式逐步 ...

  10. spring中对象的注入方式

    平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程 ...