`
zhhaojie
  • 浏览: 28390 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ArrayList ,LinkedList ,Vector,HashSet,TreeSet,HashMap,HashTable,TreeMap比较

    博客分类:
  • java
 
阅读更多

 

Collection
     |--- List:元素是有序的,元素可以重复,因为该集合体系有索引  
               |---ArrayList:查询速度快,增删稍慢,线程不同步   使用equals来比较元素是否相同
               |---LinkedList:增删速度很快,查询稍慢
               |---Vector:线程同步
     |---Set:元素是无序的,元素不可以重复 
               |--- HashSet
               |---TreeSet 
     |---Map:<k,v>
               |---Hashtable:效率低,不允许空值,线程同步,jdk1.1,数据结构:哈希表数据结构
               |---HashMap:效率高,允许空值,线程不同步,jdk1.2 数据结构:哈希表数据结构
               |---TreeMap:数据结构:二叉树,线程不同步,可以给map集合中的元素排列

1.ArrayList:数据结构是数组 是可以存放重复的数据的,因为它有下标标识,所以,是有序排列
2.LinkedList:数据结构是链表,可以存放重复数据.增删改速度很快.查询较慢
3.Vector:数据结构是数组,线程同步,现被ArrayList取代

4.HashSet:数据结构是哈希表.为了保证数据唯一性,会首先判断元素的hashCode是不是相同,如果相同还会去比较元素的equals方法
5.TreeSet:数据结构是二叉树:可以对集合中的元素进行排列.为了保证元素的唯一性,会调用CompareTo()方法来比较



分享到:
评论

相关推荐

    我的面试问题总结.docx

    实现类如ArrayList、LinkedList、HashSet、HashMap等,它们实现了这些接口并提供了具体的实现。例如,ArrayList和LinkedList都是List接口的实现,但它们在内部结构和性能上有显著差异。 二、Set、Map、List三者对比...

    应聘Java笔试时可能出现问题

    本文将深入探讨Java基础、集合框架以及常见数据结构如ArrayList、Vector、HashMap和Hashtable之间的区别。 1. **Java访问修饰符**:在Java中,`public`、`private`、`protected`以及默认(无修饰符)定义了类成员的...

    java面试题,java框架面试题

    实现 List 的类有 ArrayList,LinkedList,和 Vector 等。 Vector 和 ArrayList 都支持可随需要而增长的动态数组。能够动态的增加或减少其大小。主要不同之处在于同步。 本文总结了 Java 面试题的基础知识、Java ...

    集合框架的各自区别.pdf

    1. List接口:ArrayList、LinkedList和Vector是List接口的实现。ArrayList基于数组实现,适合随机访问,插入和删除操作相对较慢;LinkedList基于双向链表,插入和删除快,但随机访问慢;Vector与ArrayList相似,但在...

    Java集合容器面试题(2020最新版)-重点.pdf

    4. 线程安全:某些集合类如Vector和HashTable是线程安全的,但大多数集合类如ArrayList、HashMap不是。为了在多线程环境下保证安全,可以使用Collections.synchronizedXXX方法同步集合,或者使用ConcurrentHashMap等...

    Java 72 道面试题及答案.docx

    2. List(列表):有序、可重复、多个null元素,实现类有ArrayList、LinkedList、Vector等。 3. Map(映射):键值对集合,键无序、唯一,值可重复,实现类有HashMap、TreeMap、HashTable等。 集合框架的优点: 1....

    02-Java集合容器面试题-重点.docx

    Java集合容器概述、集合框架、List、Set、Map接口、Iterator、ArrayList、LinkedList、Vector、HashSet、HashMap、Queue、BlockingQueue、ConcurrentHashMap等。 Java 集合容器概述 Java 集合容器是用于存储数据...

    Java 集合面试稳稳的.pdf

    面试中可能会问到的还有ArrayList与LinkedList的区别、HashMap的扩容机制、HashMap在JDK 1.7和JDK 1.8的内部结构变化、HashTable与HashMap的区别等。对于这些集合类的理解,能够体现出应聘者对Java集合框架的熟悉...

    Java 72道面试题和答案.docx

    - Map:键值对容器,键唯一,值可重复,如HashMap、TreeMap、HashTable、LinkedHashMap和ConcurrentHashMap。 7. **底层数据结构**: - ArrayList和Vector基于Object数组实现。 - LinkedList是双向循环链表。 -...

    java集合总结.docx

    在相似类比较中,ArrayList和LinkedList各有优势。ArrayList适用于需要频繁进行随机访问和修改的情况,因为它的数组基础使其在查找上更快。相反,LinkedList在元素的插入和删除操作上更高效,但随机访问较慢。在...

    java练习题--容器使用练习

    5. 容器操作比较:对比ArrayList和LinkedList的性能差异,理解何时应该使用HashSet而不是List,何时应选择HashMap而不是其他类型的集合。 6. 遍历机制:熟悉foreach循环(增强for循环)和迭代器两种遍历容器的方法...

    浅谈JAVA集合框架及其应用.pdf

    HashMap和TreeMap分别基于HashSet和TreeSet实现。HashMap提供了快速的键值查找,但不保证有序。TreeMap则按照键的自然顺序或Comparator进行排序。Properties是Hashtable的一个特例,常用于读取和修改配置文件。 在...

    java实验04.docx

    Java集合框架由多个接口和类组成,如List、Set和Map接口,以及ArrayList、HashSet、LinkedList、HashMap等实现类。 - 集合的体系结构包括接口和实现类,接口定义了通用操作,而实现类提供了具体的实现。 2. **List...

    实验七:Java集合与泛型

    在List接口中,我们重点学习了ArrayList和LinkedList,以及Vector。ArrayList是基于动态数组实现的,提供随机访问和修改元素的高效性能,但插入和删除元素时效率较低,因为它需要移动元素。LinkedList则通过双向链表...

    Java 基础核心总结 +经典算法大全.rar

    ArrayList Vector LinkedList 类Stack HashSet TreeSet LinkedHashSet 类 PriorityQueue HashMap TreeMap 类 LinkedHashMap 类 Hashtable 类IdentityHashMap 类WeakHashMap 类 Collections 类集合实现类特征图 泛形 ...

    java collections design.pdf

    2. 通用目的的实现:如ArrayList、LinkedList、HashSet、TreeSet、HashMap和TreeMap,它们是接口的具体实现。 3. 包装器实现:如Collections工具类提供的不可变版本(如Collections.unmodifiableList()),以及同步...

    Java 最常见的 208 道面试题:第二模块答案

    3. **Map**:键值对的集合,如 HashMap、HashTable、LinkedHashMap、TreeMap 和 ConcurrentHashMap。 **HashMap 和 Hashtable 的区别**: - **线程安全性**:Hashtable 是线程安全的,而 HashMap 不是。在多线程...

Global site tag (gtag.js) - Google Analytics