集合
文章平均质量分 85
一颗洛米
此生若能得幸福安稳, 谁又愿颠沛流离
展开
-
Java提高——常见Java集合实现细节(1)
集合关系图Set和Mapset代表一种集合元素无序、集合元素不可重复的集合map代表一种由多个key-value对组成的集合set和map的关系set和map的接口十分类似。Map的key有一个特征:所有key不能重复,且key之间没有顺序,也就是...原创 2018-04-18 15:07:35 · 241 阅读 · 0 评论 -
Java提高——常见Java集合实现细节(2)
TreeMap和TreeSetHashSet的底层依赖于HashMap的实现。TreeSet底层采用一个NavigableMap来保存TreeSet集合的元素。实际上由于NavigableMap只是一个接口,因此底层依然使用TreeMap来包含Set集合中的所有元素。TreeSet源码:public class TreeSet<E> extends AbstractSet<E&g...原创 2018-04-18 15:08:07 · 162 阅读 · 1 评论 -
Java提高——常见Java集合实现细节(3)
Map和Listmap的values方法map集合是一个关联数组,它包含两组值:一组是key组成的集合,因为map集合的key不允许重复,且map不会保存key加入的顺序,因此这些key可以组成一个Set集合;另一组是value组成的集合,因为value完全可以重复,且map可以根据key来获取对应的value,所以这些value可以组成一个List集合。HashMap的values方法的源码:p...原创 2018-04-18 15:08:20 · 151 阅读 · 0 评论 -
总体框架
Java集合是Java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合的工具包位置是java.util.*。Java集合主要包括四部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections)主要框架图:先抓主干:Collection和MapCollection是List、Set和...转载 2018-06-13 13:40:42 · 1728 阅读 · 0 评论 -
ArrayList源码解析
构造图如下:蓝色线条:继承绿色线条:接口实现ArrayList定义:public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.SerializableArrayList是一个数组队列,相当于动态数组,...转载 2018-06-13 17:01:33 · 260 阅读 · 1 评论 -
LinkedList源码解析
前言LinkedList和ArrayList一样实现了List接口,只是ArrayList是List接口大小可变数组的实现,LinkedList是基于链表的实现,因为如此,使得LinkedList在插入和删除的时候更优于ArrayList,而随机访问则比ArrayList逊色。构造图如下:蓝色线条:继承绿色线条:接口实现正文因为LinkedList是基于链表的List接口的实现,因此先来说说关于链...转载 2018-06-25 23:08:45 · 149 阅读 · 0 评论 -
HashMap源码解析
转载 2018-06-27 15:37:42 · 106 阅读 · 0 评论