Collection是一个高度抽象的接口,它主要有List和Set两个分支,List和Set也是接口,它们继承Collection接口。List是一个有序的队列,List中可以有重复的元素;Set是数学中的一个概念,Set中不允许有重复元素存在。为了方便起见,Java作者抽象出了AbstractCollection抽象类,它实现了Collection中的大部分功能,在实现Collection的时候,只需要继承AbstractCollection抽象类,就可以实现需求,避免了冗余编码。AbstractList和AbstractSet继承AbstractCollection抽象类,List的具体实现类实现了AbstractList接口,Set则是实现了AbstractSet接口。
此外,Collection中有一个iterator()函数,它的作用是返回一个Iterator接口。通常,我们通过Iterator迭代器来遍历集合。ListIterator是List接口所特有的,在List接口中,通过ListIterator()返回一个ListIterator对象。
下面具体讲解Collection的方法。
Collection的定义如下:public interface Collection<E>extends Iterable<E>{},它是一个接口,是高度抽象出来的集合,它包含了集合的基本操作:添加、删除、清空、遍历(读取)、是否为空、获取大小、是否保护某元素等等。它的主要API如下:
List接口继承Collection,是集合的一种,List是一个有序集合,可以存放重复元素,每个元素都有自己的索引,第一个元素的索引是0。由于继承了Collection,List也包含了Collection中的所有接口,此外,List还有自己的接口。相比于Collection,List新增的接口如下:
从API可以看出,主要有“添加、删除、获取、修改指定位置的元素”、“获取List中的子队列”等。
Set也继承Collection,所以也是集合的一种,和List允许有重复元素不同,Set不允许有重复元素。Set不允许重复是依赖于Map的key唯一的机制,这个后面会详细说明。下图是Set的API。
从API可以看出,Set的API和Collection一样。
以上就是动力节点java培训机构的小编针对“Java中collection是什么”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习