全部博文(178)
分类: Java
2008-04-02 10:05:13
COLLECTION 接口
1.Boolean ( e) 确保此 collection 包含指定的元素(可选操作)。
2.Boolean ( extends > c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。
3.Void ()
移除此 collection 中的所有元素(可选操作)。
4.Boolean ( o)如果包含指定的元素则返回 true。
5.Boolean (> c)如果此包含指定 collection 中的所有元素,则返回 true。
6.Boolean ( o) 比较此 collection 与指定对象是否相等。
7.Int ()
返回此 collection 的哈希码值。
8.Boolean ()
如果此 collection 不包含元素,则返回 true。
9.<> () 返回在此 collection 的元素上进行迭代的迭代器。
19.Boolean ( o)从此中移除指定元素的单个实例,如果存在的话(可选操作)。
11.Boolean (> c) 移除此中那些也包含在指定 collection 中的所有元素(可选操作)。
12.Boolean (> c) 仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。
13.Int ()
返回此 collection 中的元素数。
14.[] ()
返回包含此 collection 中所有元素的数组。
15.
LIST 接口
public interface List extends
有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
1. Void
(int index,
element) 在列表的指定位置插入指定元素(可选操作)。
2. Boolean
(int index,
extends > c) 将指定
collection 中的所有元素都插入到列表中的指定位置(可选操作)。
3. (int index)
返回列表中指定位置的元素。
4. Int
( o) 返回此列表中第一次出现的指定元素的索引;如果此列表不包含该元素,则返回 -1。
5. Int ( o) 返回此列表中最后出现的指定元素的索引;如果列表不包含此元素,则返回 -1。
6. <> ()
返回此列表元素的列表迭代器(按适当顺序)。
7. <> (int index)
返回列表中元素的列表迭代器(按适当顺序),从列表的指定位置开始。
9.
(int index)
移除列表中指定位置的元素(可选操作)。
10. Boolean
( o) 从列表中移除第一次出现的指定元素(如果存在)(可选操作)。
11. (int index,
element) 用指定元素替换列表中指定位置的元素(可选操作)。
<>(int fromIndex,
int toIndex) 返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图。
接口
Set
public interface Set extends
一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2)
的元素对 e1
和 e2
,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。
在所有构造方法以及 add、equals 和 hashCode 方法的协定上,Set 接口还加入了其他规定,这些规定超出了从 Collection 接口所继承的内容。出于方便考虑,它还包括了其他继承方法的声明(这些声明的规范已经专门针对 Set 接口进行了修改,但是没有包含任何其他的规定)。
Map接口
public interface Map
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。
此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。
Map 接口提供三种collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection 视图上返回其元素的顺序。某些映射实现可明确保证其顺序,如 TreeMap 类;另一些映射实现则不保证顺序,如 HashMap 类。
1. Void ()
从此映射中移除所有映射关系(可选操作)。
2. Boolean ( key) 如果此映射包含指定键的映射关系,则返回 true。
3. Boolean ( value) 如果此映射将一个或多个键映射到指定值,则返回 true。
4. <<,>> ()
返回此映射中包含的映射关系的 视图。
Boolean ( o) 比较指定的对象与此映射是否相等。
5. ( key) 返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。
6.Int ()
返回此映射的哈希码值。
7. Boolean ()
如果此映射未包含键-值映射关系,则返回 true。
8. <> ()
返回此映射中包含的键的 视图。
9. ( key, value) 将指定的值与此映射中的指定键关联(可选操作)。
10.Void ( extends ,? extends > m) 从指定映射中将所有映射关系复制到此映射中(可选操作)。
11. ( key)如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
12. Int ()
返回此映射中的键-值映射关系数。
13. <> ()
返回此映射中包含的值的 视图。
各种实现类
List的实现类:
一.
类 AbstractList
此类提供 接口的骨干实现,以最大限度地减少实现“随机访问”数据存储(如数组)支持的该接口所需的工作。对于连续的访问数据(如链表),应优先使用 ,而不是此类。
1.Protected
void(int fromIndex,
int toIndex) 从此列表中移除索引在
fromIndex(包括)和 toIndex(不包括)之间的所有元素。
2. <>(int fromIndex,
int toIndex) 返回列表中指定的
fromIndex(包括 )和 toIndex(不包括)之间的部分视图。
ArrayList类
List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)
() 构造一个初始容量为 10 的空列表。 |
( extends > c) 构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。 |
(int initialCapacity) 构造一个具有指定初始容量的空列表。 |
方法摘要 |
Void (int minCapacity)
如有必要,增加此
ArrayList 实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数。 |
Void ()
将此 ArrayList 实例的容量调整为列表的当前大小。 |
类
Vector
public class Vector extends
implements , , ,
Vector
类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector
的大小可以根据需要增大或缩小,以适应创建 Vector
后进行添加或移除项的操作。
构造方法摘要 |
|
() 构造一个空向量,使其内部数据数组的大小为 10,其标准容量增量为零。 |
|
( extends > c) 构造一个包含指定 collection 中的元素的向量,这些元素按其 collection 的迭代器返回元素的顺序排列。 |
|
(int initialCapacity) 使用指定的初始容量和等于零的容量增量构造空向量。 |
|
(int initialCapacity,
int capacityIncrement) 使用指定的初始容量和容量增量构造一个空的向量。 |
|
方法摘要 |
Void ( obj) 将指定的组件添加到此向量的末尾将其大小增加 1。 |
Int () 返回此向量的当前容量。 |
Void ([] anArray) 将此向量的组件复制到指定的数组中。 |
(int index) 返回指定索引处的组件。 |
<> ()
返回此向量的组件的枚举。 |
Void (int minCapacity)
增加此向量的容量(如有必要),以确保其至少能够保存最小容量参数指定的组件数。 |
()
返回此向量的第一个组件(位于索引 0) 处的项)。 |
Void ( obj, int index) 将指定对象作为此向量中的组件插入到指定的 index 处。 |
()
返回此向量的最后一个组件。 |
Void () 从此向量中移除全部组件,并将其大小设置为零。 |
Boolean ( obj) 从此向量中移除变量的第一个(索引最小的)匹配项。 |
Void (int index)
删除指定索引处的组件。 |
Boolean (> c)此向量中仅保留包含在指定 Collection 中的元素。 |
Void ( obj, int index)将此向量指定 index 处的组件设置为指定的对象。 |
Void (int newSize)
设置此向量的大小。 |
Void ()
对此向量的容量进行微调,使其等于向量的当前大小。 |
二.AbstractSequentialList
public abstract class AbstractSequentialList extends
此类提供了 List 接口的骨干实现,从而最大限度地减少了实现受“连续访问”数据存储(如链接列表)支持的此接口所需的工作。对于随机访问数据(如数组),应该优先使用 AbstractList,而不是先使用此类。
LinkList类
public class LinkedList extends
implements , , ,
List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、或。
此类实现 Deque 接口,为 add、poll 提供先进先出队列操作,以及其他堆栈和双端队列操作。
所有操作都是按照双重链接列表的需要执行的。在列表中编索引的操作将从开头或结尾遍历列表(从靠近指定索引的一端)。注意,此实现不是同步的。
构造方法摘要 |
|
() 构造一个空列表。 |
|
( extends > c) 构造一个包含指定 collection 中的元素的列表,这些元素按其 collection 的迭代器返回的顺序排列。 |
|
方法摘要 |
|
void |
( e) 将指定元素插入此列表的开头。 |
void |
( e) 将指定元素添加到此列表的结尾。 |
|
() 获取但不移除此列表的头(第一个元素)。 |
|
() 返回此列表的第一个元素。 |
|
() 返回此列表的最后一个元素。 |
boolean |
( e)将指定元素添加到此列表的末尾(最后一个元素),(从1.5开始)。 |
|
() 获取但不移除此列表的头(第一个元素)。 |
|
() 获取并移除此列表的头(第一个元素) |
|
() 移除并返回此列表的第一个元素。 |
|
() 移除并返回此列表的最后一个元素。 |
boolean |
removeLastOccurrence( o) 从此列表中移除最后一次出现的指定元素(从头部到尾部遍历列表时)。 |
接口
Set
public interface Set extends
一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2)
的元素对 e1
和 e2
,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。
在所有构造方法以及 add、equals 和 hashCode 方法的协定上,Set 接口还加入了其他规定,这些规定超出了从 Collection 接口所继承的内容。出于方便考虑,它还包括了其他继承方法的声明(这些声明的规范已经专门针对 Set 接口进行了修改,但是没有包含任何其他的规定)。
实现类:
抽象类
AbstractSet
没有特殊方法此类并没有重写 AbstractCollection 类中的任何实现。它仅仅添加了 equals 和 hashCode 的实现。
HashSet类
此类实现 Set 接口,由哈希表(实际上是一个
HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。
注意,此实现不是同步的。如果多个线程同时访问一个哈希 set,而其中至少一个线程修改了该
set,那么它必须 保持外部同步。
()构造一新的空set,其底层HashMap 实例的默认初始容量是16加载因子是 0.75。 |
( extends > c) 构造一个包含指定 collection 中的元素的新 set。 |
(int initialCapacity)构造一个新的空 set,其底层 HashMap 实例具有指定的初始容量和默认的加载因子(0.75)。 |
(int initialCapacity, float loadFactor) 构造一个新的空 set,其底层 HashMap 实例具有指定的初始容量和指定的加载因子。 |
方法没有特殊的方法
TreeSet类
public class TreeSet extends
implements , ,
基于 的 (版本1.6)实现。使用元素的对元素进行排序,或者根据创建 set 时提供的 进行排序,具体取决于使用的构造方法。
此实现为基本操作(add
、remove
和 contains
)提供受保证的 log(n) 时间开销。
注意,如果要正确实现 Set
接口,则 set 维护的顺序(无论是否提供了显式比较器)必须与 equals 一致。(关于与 equals 一致 的精确定义,请参阅 Comparable
或 Comparator
。)这是因为 Set
接口是按照 equals
操作定义的,但 TreeSet
实例使用它的 compareTo
(或 compare
)方法对所有元素进行比较,因此从 set 的观点来看,此方法认为相等的两个元素就是相等的。即使 set 的顺序与 equals 不一致,其行为也是 定义良好的;它只是违背了 Set
接口的常规协定。
注意,此实现不是同步的。如果多个线程同时访问一个 TreeSet,而其中至少一个线程修改了该 set,那么它必须 外部同步。这一般是通过对自然封装该 set 的对象执行同步操作来完成的。如果不存在这样的对象,则应该使用 方法来“包装”该 set。此操作最好在创建时进行,以防止对 set 的意外非同步访问:
构造方法摘要 |
|
() 构造一个新的空 set,该 set 根据其元素的自然顺序进行排序。 |
|
( extends > c) 构造一个包含指定 collection 元素的新 TreeSet,它按照其元素的自然顺序进行排序。 |
|
( super > comparator) 构造一个新的空 TreeSet,它根据指定比较器进行排序。 |
|
(<> s) 构造一个与指定有序 set 具有相同映射关系和相同排序的新 TreeSet。 |
|
方法摘要 |
|
( e) 返回此 set 中大于等于给定元素的最小元素;如果不存在这样的元素,则返回 null。 |
|
super > ()
返回对此 set 中的元素进行排序的比较器;如果此 set 使用其元素的,则返回 null。 |
|
() 返回此 set 中当前第一个(最低)元素。 |
|
( e) 返回此 set 中小于等于给定元素的最大元素;如果不存在这样的元素,则返回 null。 |
|
<> ( toElement)返回此 set 的部分视图,其元素严格小于 toElement。 |
|
<> ( toElement, boolean inclusive) 返回此 set 的部分视图,其元素小于(或等于,如果 inclusive 为 true)toElement。 |
|
( e) 返回此 set 中严格大于给定元素的最小元素;如果不存在这样的元素,则返回 null。 |
|
()
返回此 set 中当前最后一个(最高)元素。 |
|
( e) 返回此 set 中严格小于给定元素的最大元素;如果不存在这样的元素,则返回 null。 |
|
() 获取并移除第一个(最低)元素;如果此 set 为空,则返回 null。 |
|
()
获取并移除最后一个(最高)元素;如果此 set 为空,则返回 null。 |