【Java技术】Collection框架体系结构

【Java技术】Collection框架体系结构
本文系装载,仅供参考学习  来源:源码时代

Collection的框架体系是面试会经常问的问题:Collection框架体系主要分为Set接口和List接口,Queue接口,每个接口都有自己的特点;
List接口特点:允许重复的,对集合中对象进行索引;有顺序的;
比较具有代表性两个:ArrayList和LinkedList;
那ArrayList和LinkedList的区别是什么呢?
①存储方式上面的区别:
ArrayList: 基于数组实现的容器类;如下代码实现:



LinkedList:基于链表实现的容器类;



②共性:ArrayList和LinkedList都是List接口的实现类;
③效率上面的区别:
ArrayList在添加,删除的时候,速度慢;在查找的时候,速度快;
LinkedList在添加,删除的时候,速度快,在查找的时候,速度慢;
LinkedList可以充当队列,堆栈,多一些操作头尾的方法;比如addFirst, addLast方法;
Set接口特点:不允许重复的值,没有顺序的;
比较具有代表性的两个:HashSet和TreeSet

HashSet和TreeSet的区别:
HashSet判断重复的标准:通过对象的hashCode方法和equals方法;
HashSet本质通过HashMap实现;



TreeSet判断重复的标准:添加到TreeSet里面的对象,要么需要实现Comparable接口,覆写compareTo方法(自然排序),要么实现Comparetor接口,覆写compare方法(比较器);
TreeSet本质通过TreeMap实现 ,如下代码所示:

Queue接口特点:在处理元素前用于保存元素的Collection;队列通常FIFO(先进先出)的方式排列各个元素;LinkedList也是实现了Queue接口的;
Collection是层次结构的根接口,但是它上面还有Iterable接口,它继承Iterable,说明什么情况?
继承Iterable,说明可以调用Iterable接口里面的iterator方法,得到一个迭代器(Iterator),通过这个迭代器,可以进行遍历元素;Iterator下面还有一个子类叫做ListIterator表示一个双向的迭代器,可以进行正向迭代,还可以进行反向迭代器;
如下Collection体系结构图:
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 Java集合框架由Java类库的一系列接口、抽象类以及具体实现类组成。我们这里所说的集合就是把一组对象组织到...
    absfree阅读 1,279评论 0 10
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,742评论 18 399
  • Collection接口 Collection接口是所有集合的祖先类。他有两个构造方法,一个无参构造,一个是带Co...
    夜幕繁华阅读 608评论 0 0
  • title: java集合框架学习总结 tags:集合框架 categories:总结 date: 2017-03...
    行径行阅读 1,707评论 0 2
  • 集合类简介 为什么出现集合类?面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就要对对象进...
    阿敏其人阅读 1,439评论 0 7