![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java集合
List/Map/Tree
wyplj_sir
只是总结。
展开
-
hashmap和hashtable区别
HashMap和Hashtable都实现了Map 接口,但Hashtable 继承自 Dictiionary,HashMap继承自AbstractMap。底层都是数组加链表实现。ps:HashMap:HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的,如果定位到的数组位置不含链表(当前entry的next指向null),那么对于查找,添加...原创 2019-02-28 14:14:11 · 205 阅读 · 0 评论 -
集合(4)Set和Map——TreeSet和TreeMap
TreeSet TreeSet 类与散列集十分类似, 不过, 它比散列集有所改进。树集是一个有序集合( sorted collection) 。 可以以任意顺序将元素插入到集合中。在对集合进行遍历时,每个值将自动地按照排序后的顺序呈现。排序是用树结构完成的(当前实现使用的是红黑树)。每次将一个元素添加到数中时,都被放置在正确的排序位置上,因此,迭代器总是以排好序的顺序访问每个元素。将一个元...原创 2020-04-06 15:02:05 · 133 阅读 · 0 评论 -
Stack,ArrayDeque,LinkedList的区别
ArrayDeque,LinkedList这两者都可以用作队列和栈下面是Stack,ArrayDeque,LinkedList的区别:类继承树由继承树看出,三者都是Collection的间接实现类。ArrayDeque实现Deque接口,Stack继承于Vector,LinkedList实现Deque与List接口区别底层数据存储方式 存储...转载 2020-04-05 17:44:03 · 974 阅读 · 0 评论 -
集合(3)Set和Map——HashSet和HashMap
按书上的顺序,是先讲Set然后讲Map,但Set和Map的底层联系密切,例如,HashSet依赖于HashMap,它实际上是通过HashMap实现的;TreeSet依赖于TreeMap,它实际上是通过TreeMap实现的。所以先看Map。一、Map简介Map是一个映射接口,即key-value键值对。Map中的每一个元素包含“一个key”和“key对应的value”。不允许键重复(重复...原创 2020-04-06 14:19:11 · 874 阅读 · 0 评论 -
集合(2)List——LinkedList和ArrayList(Vector、Stack)
目录一、List简介二、链表(LinkedList,listIterator/add/previous/remove/set/get)三、数组列表(ArrayList)四、四种List总结ArrayList:LinkedList:Vector和Stack:一、List简介List中元素是有序的、可重复,可以对列表中每个元素的插入位置进行精确地控制。除了...原创 2019-06-11 20:01:45 · 178 阅读 · 0 评论 -
集合(1)集合接口
目录一、将集合的接口与实现分离二、Java类库中的集合接口和迭代器接口1、迭代器2、删除元素3、泛型实用方法三、Java集合框架简介1、Collection2、Map说明:这一系列博客内容摘自《Java核心技术 卷I》一、将集合的接口与实现分离与现代的数据结构类库的常见情况一样,Java集合类库也将接口与实现分离。首先,看一下人们熟悉的数据结构——队列(...原创 2019-06-09 16:11:17 · 337 阅读 · 0 评论 -
java集合框架简单比较
1.ArrayList(1)ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,底层通过数组实现。(2)允许放入null元素。(3)为追求效率,ArrayList没有实现同步(synchronized),如果需要多个线程并发访问,用户可以手动同步,也可使用Vector替代。2.LinkedList(1)LinkedList同时实现了List接口...原创 2017-10-16 16:10:00 · 204 阅读 · 0 评论