
Java容器源码
sun cat
只有让自己变得更优秀,才无所畏惧
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
4-Set
Set接口继承于Collection接口,它没有提供额外的方法,但实现了Set接口的集合类中的元素是无序且不可重复。 特征:无序且不可重复。 public interface Set<E> extends Collection<E> { int size(); boolean isEmpty(); boolean contains(Objec...原创 2019-09-10 22:55:40 · 347 阅读 · 0 评论 -
7-HashSet
HashSet中不允许有重复元素,这是因为HashSet是基于HashMap实现的,HashSet中的元素都存放在HashMap的key上面,而value中的值都是统一的一个private static final Object PRESENT = new Object();。HashSet跟HashMap一样,都是一个存放链表的数组。 HashSet的构造器 public HashSet(...原创 2019-09-10 22:59:58 · 169 阅读 · 0 评论 -
8_LinkedList
LinkedList类是双向列表,列表中的每个节点都包含了对前一个和后一个元素的引用. 继承extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable LinkedList构造器 public LinkedList()...原创 2019-10-09 21:55:52 · 137 阅读 · 0 评论 -
9_ArrayList
ArrayList 是一个数组队列,相当于 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。 ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。 ArrayLis...原创 2019-10-09 21:50:01 · 149 阅读 · 0 评论 -
10-HashMap
HashMap是用哈希表(直接一点可以说数组加单链表)+红黑树实现的map类。 HashMap构造器 static final float DEFAULT_LOAD_FACTOR = 0.75f; final float loadFactor; public HashMap() { this.loadFactor = DEFAULT_LOAD_FACTOR; // all oth...原创 2019-09-10 23:09:46 · 270 阅读 · 0 评论 -
12_ConcurrentHashMap
ConcurrentHashMap 为什么要用ConcurrentHashMap HashMap线程不安全,而Hashtable是线程安全,但是它使用了synchronized进行方法同步,插入、读取数据都使用了synchronized,当插入数据的时候不能进行读取(相当于把整个Hashtable都锁住了,全表锁),当多线程并发的情况下,都要竞争同一把锁,导致效率极其低下。而在JDK1....原创 2019-11-26 21:46:51 · 284 阅读 · 1 评论