认识Java集合类Collection接口
1、Collection接口作为集合的一个根接口,它提供了对集合对象进行基本操作的通用接口方法,接口在Java 类库中有很多具体的实现。其意义是为各种具体的集合提供了最大化的统一操作方式。JDK不提供此接口的任何直接实现,而是提供更具体的子接口,有Set接口、List接口、Queue接口。Set接口存放的元素是无序的且不包含重复元素(对象);List接口存放的元素是有序的且允许有重复的元素;Queue接口存放的元素顺序符合先入先出的规则,和我们日常生活中的排队模型很类似。Collection接口层次如下图所示:
2、Collection接口定义了一组对象和毋队末哎它的子类需要实现的方法,下面分类列出并说明。1、容器类中添加、删坛冰核哧除的操作方法(1) boolean add(Object obj)将Object对象添加到collection。(2) boolean remove(Object obj)如果collection中有与obj相匹配的对象,则删除该对象。2、容器类中元素查询的操作方法(1) int size()返回当前集合中元素的数量。(2)boolean isEmpty()从当前collection中查询是否包含元素。(3)boolean contains(Object obj)查找此collection是否包含指定的元素。(4)boolean contains(Collection collec)判断此Collection是否包含指定Collection中所有元素。(5) Iterator iterator ()返回此Collection上的迭代器,用来访问该Collection中各个元素。(6) boolean contains All(Collection collec)判断Collection是否含有collec中的所有元素。3、容器类中的组操作方法(1)boolean addAll(Collection collec)将指定的collec中的所有元素添加到当前Collection。(2) void clear()删除当前Collection中的所有元素。(3) void removeAll(Collection collec)从当前Collection中删除collec中的所有元素。(4) void retainAll(Collection collec)从当前Collection中删除collec中不包含的元素。4、转换操作,用于集合与数组间的转换(1) Object[] toArray()将当前Collection转成对象数组(2) Object[] toArray(Object[] a)返回一个内含当前Collection所有元素的array。在Collection中并未提供get()方法获取元素。如果要遍历Collection中的元素,一般要采用Iterator迭代器,可以通过Iterator迭代器遍历Collection各个对象元素。5.Iterator接口中定义的方法如下:(1) boolean hasNext()判断是否有下一个元素。(2) Object next()返回当前指针指向的元素,并指向下一个元素(3) void remove()删除当前指针所指向的元素,一般和next方法一起用,这时候的作用就是删除next方法返回的元素。下面给出利用Iterator遍历Collection的用法
3、例子代码构建了一个Person,在main方法中声明了Collection集合类,并实例化为ArrayList集合对象,先后添加了p1和P2两个Person对象。最后用Iterator迭代器遍历ArrayList包含的所有Person元素。