集合框架
zpoison
软件工程师
展开
-
集合框架源码分析(jdK1.7)(一)HashMap
目录1.散列表简介1)什么是哈希表:2)特点(优点):结合了数组和链表的优点3)结构:4)缺点:5)散列法6)散列冲突:2.HashMap的数据结构3主要参数4.HashMap的核心构造方法4.1初始化容量5.HashMap的Put方法5.1扩容方法inflateTable(threshold)5.2 putForNullKey(value)...原创 2018-07-02 08:58:45 · 391 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(十) 集合框架对比总结
oracle java tutorial官方文档链接是:https://docs.oracle.com/javase/tutorial/collections/index.html 1.核心集合接口层次关系同类对比Map系列名称 特点 数据结构 初始容量(默认) 扩容方式 HashMap 键值对,存Null值 散列表 16 容量使用75%(负载因子) 扩大1倍 HashTable...原创 2018-07-02 18:05:44 · 223 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(九) TreeSet
目录1.数据结构2主要参数3.构造方法4. add(E e)5.TreeSet的特点6案例TreeSet的遍历方式1.数据结构 private transient NavigableMap<E,Object> m; 初看可能会有些陌生其实NavigableMap是一个接口 public class TreeMap<K...原创 2018-07-02 15:31:45 · 222 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(八) HashSet
目录1数据结构2.主要参数3.核心构造方法4 add(E e)5.HashSet遍历的3种方式1数据结构private transient HashMap<E,Object>map;可以看出HashSet是有一个HashMap来维护的,所以和HashMap的数据结构完全相同2.主要参数 private transient HashMap&l...原创 2018-07-02 15:26:56 · 300 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(七) Vector
目录1.Vector的数据结构2.主要参数3.核心构造方法4. add(E e)方法5扩容方式6get(int index)方法7 remove(int index)7.1 arraycopy()方法8.总结1.Vector的数据结构 protected Object[] elementData; //可以看出来Vector的数据结构和Ar...原创 2018-07-02 15:23:29 · 201 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(六)LinkedList
目录1 LinkedList的数据结构2主要参数3.构造方法4. add(E e)方法5.add(int index, E element)6.get(int index)7.push(E e)方法8 pop()方法9. remove(intindex)10 .toArray()方法11.总结1 LinkedList的数据结构LinkedList...原创 2018-07-02 15:20:54 · 195 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(五)ArrayList
目录1.ArrayList数据结构2.主要参数3.核心构造方法3.1初始容量(10)4. add(E e)方法5.add(int index, E element)方法6扩容机制6.1 Arrays.copyOf(T[] original, int newLength)7. get(intindex)9.总结1.ArrayList数据结构 ...原创 2018-07-02 15:17:14 · 214 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(三)TreeMap
目录1.红黑树简介1.1二叉树1.2平衡二叉树1.3红黑树1.4红黑树添加操作1.5左旋、右旋1.6删除操作2.TreeMap的数据结构3.主要参数:4.Treem主要构造方法:5.TreeMap的Put方法5.1 fixAfterInsertion(e)把二叉树调整为红黑树;5.2rotateRight()左旋方法5.3rotateRigh...原创 2018-07-02 15:12:40 · 546 阅读 · 0 评论 -
集合框架源码分析(jdK1.7)(二)HashTable
目录1.数据结构2.主要参数3.HashTable的核心构造方法3.1初始化容量3.HashTable的Put方法3.1扩容方法rehash();4.HashTable的get方法5.remove方法6.总结:1.数据结构HashTable的数据结构和HashMap的数据结构相同,都是有散列表构成的,内部都是由Entry<K,V>来维护的。...原创 2018-07-02 15:06:19 · 316 阅读 · 0 评论 -
java集合框架源码分析系列
集合框架源码分析(jdK1.7)(一)HashMap集合框架源码分析(jdK1.7)(二)HashTable集合框架源码分析(jdK1.7)(三)TreeMap集合框架源码分析(jdK1.7)(五)ArrayList集合框架源码分析(jdK1.7)(六)LinkedList集合框架源码分析(jdK1.7)(七) Vector集合框架源码分析(jdK1.7)(八) Ha...原创 2018-07-27 15:07:13 · 561 阅读 · 0 评论