您的位置:首页 > 编程语言 > Java开发

深入学习java集合:JAVA集合类主要接口

2016-05-27 21:01 417 查看
1、java集合类关系图



      上述类图中,实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象类,比如AbstractCollection,AbstractList,AbstractMap等,而点线边框的是接口,比如Collection,Iterator,List等。

    Collection 接口是 List、Set 和 Queue 接口的父接口,该接口里定义的方法既可用于操作 Set 集合,也可用于操作 List 和 Queue 集合:

       Iterator接口主要用于遍历 Collection 集合中的元素,Iterator对象也被称为迭代器。Iterator接口隐藏了各种 Collection 实现类的底层细节,向应用程序提供了遍历 Collection 集合元素的统一编程接口。Iterator仅用于遍历集合,Iterator本身并不提供承装对象的能力。如果需要创建 Iterator对象,则必须有一个被迭代的集合。主要包含hashNext(),next(),remove()三种方法。它的一个子接口LinkedIterator在它的基础上又添加了三种方法,分别是add(),previous(),hasPrevious()。也就是说如果是先Iterator接口,那么在遍历集合中元素的时候,只能往后遍历,被遍历后的元素不会在遍历到,通常无序集合实现的都是这个接口,比如HashSet,HashMap;而那些元素有序的集合,实现的一般都是LinkedIterator接口,实现这个接口的集合可以双向遍历,既可以通过next()访问下一个元素,又可以通过previous()访问前一个元素,比如ArrayList。

2、Collection接口与Iteratble接口

         

        
     Collection接口继承了Iteratble接口,而后者体现了设计模式中的的迭代器模式,通过iterator()方法返回一个遍历集合的Iterator对象。Collection接口中定义了集合的基本操作方法。

3、Set接口、List接口和ListIterator接口
   


       
     Set接口是java集合类中的不可重复的集合类容器的基本接口,继承自Collection接口,Set 集合实现中不允许包含相同的元素,如果试把两个相同的元素加入同一个 Set 集合中,则添加操作失败。Set 判断两个对象是否相同不是使用 == 运算符,而是根据 equals 方法。
     List是java集合类中的有序可重复的列表类容器的基本接口,同样继承自Collection接口,添加了许多与操作顺序列表相关的方法,如E get(int index)、 E set(int index, E element);分别获取列表中下标为index的元素以及设置元素;List<E>
subList(int fromIndex, int toIndex)方法用于形成一个列表的子视图。遍历列表,还可以通过 调用ListIterator<E> listIterator()方法,获取一个专门为遍历列表而设计的 ListIterator。

4、Map接口
      


       Map 用于保存具有映射关系的数据,因此 Map 集合里保存着两组值,一组值用于保存 Map 里的 Key,另外一组用于保存 Map 里的Value,Map 中的 key 和  value 都可以是任何引用类型的数据。Map 中的 Key 不允许重复,即同一个 Map 对象的任何两个 Key 通过 equals 方法比较中返回 false。Key 和 Value 之间存在单向一对一关系,即通过指定的 Key 总能找到唯一的,确定的 Value。
      Map接口内部定义了Entry接口,用于具体实现中key/value对的存储。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java集合 List Set