java.util.Collection
接口
作者:
zccst
java.util.Collection
接口是描述
Set
和
List
集合类型的根接口,其中定义了有关集合操作的普遍性方法(部分):
boolean add(Object o);
//
将指定对象添加到集合中
boolean remove(Object o);
//
移除指定对象。返回值为
Boolean
性,如果指定对象存在,返回
true
,否则返回
false
。
int size();
//
集合中存放对象的个数
boolean isEmpty();
//
是否为空,是则返回
true
boolean contains(Object O);
//
查看集合中是否存在指定对象
void clear();
//
移除集合中使用对象,清空该集合
iterator iterator();
//
遍历集合中所有对象
object[] toArray();
//
返回一个包含所有对象的
Object
型数组
注:由于
Collection
主要在
java
开发早期使用,但是随着
Java
的发展,为了让程序的开发及使用更加明确,例如,此集合中的内容是否可以重复、是否可以排序等,所以提倡直接使用
Collection
的子接口,比如:
List
、
Set
等。现在已经很少直接使用
Collection
接口了。
不细心的初学者,可能会问为什么
Collection
是接口,但却有操作集合元素的实现方法,不是接口中只有抽象方法吗,怎么会有实现的方法呢?
这是由于没有弄清楚
Collection
与
Collections
的区别。下面就来看一下:
先看英文解释:
Collection is an interface.
//Collection
是接口
Collections is a concrete utility class.
//Collections
是(对集合进行操作的)具体的工具类
既然
Collection
是接口,那么它的方法就是抽象方法,不能直接使用。
而
Collections
是具体的工具类,提供一些静态的对于
Collection
的方法,比如排序,查找,等等,让你操作集合很方便。所以当然可以直接使用它的方法。关于
Collections
的介绍,在
Enumeration
接口和
Collections
类一文中有详细讲解。
java.util.Set
和
java.util.List
分别描述前述的集合和列表结构,二者均为
Collection
的子接口。
List
接口中规定使用者可以对列元素的插入位置进行精确控制,并添加了根据元素索引来访问元素的功能。接口中新添加的相应方法如下:
void add(int index, Object O);
Object get(int index);
Object set(int index, Object element);
int indexOf(Object O);
Object remove(int index);
注:在
Java
类库中,没有直接继承
Collection
的类,都是继承
Collection
的子接口,比如:
List
、
Set
等,而且都不相交,也就是不可以既是
List
又是
Set
。
联系客服