常用的高级数据类型——集合类型
一、 语言中的集合类型 主要有三种形 式: (集 )、 (列表)、
(映射),每种类型的集合都包括三部分:接口、实现和算法。
集合接口实现集合的操作和集合的具体功能实现细节的相互分离——
接口、 接口、 接口
集合的具体功能实现类实质上是各种可重用的数据结构的具体表示
接口的实现类有 、、 和 等
集合类,类提供了实现可增长数组的功能,随着更多元素
加入其中,数组变的更大。在删除一些元素之后,数组变小。
接口的实现类有 、 和 等集
合类
接 口 的 实 现 类 有
、 、 、 和
等集合类。
集合的算法指可以对实现集合接口的各个集合的功能实现类提供如排序、
查找、交换和置换等方面的功能实现。
二、 接口
接口代表有序的集合,可以对 接口代表的有序集合中每个元素的
插入位置进行精确地控制,并利用元素的整数索引(代表元素在集合中的位
置)访问元素中的各个成员, 接口代表的集合是允许出现重复元素的。
接口主要成员方法:
)( !"#)在列表指定位置插入指定元素
)"$% 返回结合中指定位置的元素
&)"#% 移除集合中指定位置的元素
')"% !"#用指定元素替换集合中指定位置的元
素
()add%")向列表的尾部追加指定的元素
*)contains%+,))如果列表包含指定的元素,则返
回 -。
.)isEmpty%)如果列表不包含元素,则返回 -。
/)size%)返回列表中的元素数
0)1%返回以正确顺序在列表的元素上进行迭代的迭
代器。
& 的实现类
在数据结构中分别表现为数组()、向量( )、
链表()、堆栈( )和队列等形式。
集合和 集合都是采用数组形式来保存对象,区别在
于 集合本身不具有线程同步的特性,不能用在多线程的环境下,
可以使用 集合能够节省由于同步而产生的系统性能的开销。而
集合实现了对线程同步的支持,因此在多线程并发访问的应用环境
下,该集合本身能够保证自身具有线程安全性。在多线程的并发访问中,可
以将 集合的对象实例设计为类中的成员属性,而应该将
集合的对象实例设计为局部对象。