Java集合框架
文章平均质量分 96
斜月&三星
这个作者很懒,什么都没留下…
展开
-
LinkedHashMap
1. 简介LinkedHashMap 可以认为是 HashMap+LinkedList,它既使用 HashMap 操作数据结构,又使用 LinkedList 维护插入元素的先后顺序,内部采用双向链表(doubly-linked list)的形式将所有元素( entry )连接起来。LinkedHashMap 继承了 HashMap,允许放入 key 为 null 的元素,也允许插入...原创 2020-01-19 19:01:14 · 265 阅读 · 0 评论 -
ArrayList
ArrayList就是数组列表,主要用来装载数据,当我们装载的是基本类型的数据int,long,boolean,short,byte…的时候我们只能存储他们对应的包装类,它的主要底层实现是数组Object[] elementData。与它类似的是LinkedList,和LinkedList相比,它的查找和访问元素的速度较快,但新增,删除的速度较慢。小结:ArrayList底层是...原创 2020-01-18 21:34:56 · 273 阅读 · 0 评论 -
Java 集合中常见的面试题
1. Arraylist 与 LinkedList 异同是否保证线程安全:ArrayList 和 LinkedList 都是不同步的,也就是不保证线程安全; 底层数据结构:Arraylist 底层使用的是Object数组;LinkedList 底层使用的是双向循环链表数据结构; 插入和删除是否受元素位置的影响:①ArrayList 采用数组存储,所以插入和删除元素的时间复杂度受元...原创 2020-01-18 20:21:31 · 137 阅读 · 0 评论 -
ConcurrentHashMap 详解
一、JDK7下的 CurrentHashMap 在JDK1.7版本中,ConcurrentHashMap的数据结构是由一个Segment数组和多个HashEntry组成,主要实现原理是实现了锁分离的思路解决了多线程的安全问题。Segment数组的意义就是将一个大的table分割成多个小的table来进行加锁,也就是上面的提到的锁分离技术,而每一个Segment元素存储的是 Has...原创 2020-01-18 20:07:44 · 444 阅读 · 0 评论 -
HashMap 详解
一. HashMap 的数据结构组成 HashMap采用Entry数组来存储key-value对,每一个键值对组成了一个Entry实体,Entry类实际上是一个单向的链表结构,它具有Next指针,可以连接下一个Entry实体。只是在JDK1.8中,链表长度大于8的时候,链表会转成红黑树!其中,数组是用来确定桶的位置,利...原创 2020-01-18 15:19:25 · 527 阅读 · 0 评论 -
Java集合框架概览
常见容器主要包括 Collection 和 Map 两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。 Java 集合...原创 2020-01-18 14:06:47 · 134 阅读 · 0 评论