logo头像

生而无畏,战至终章

Java集合框架之LinkedHashMap

本文若无特殊说明,源码均为JDK1.8 概述LinkedHashMap它继承自HashMap,实现了Map<K,V>接口。其内部还维护了一个双向链表,在每次插入数据,或者访问、修改数据时,会增加节点、或调整链表的节点顺序,...

Arrays.sort 实现原理和 Collections.sort 实现原理

本文若无特殊说明,JDK版本为1.8 使用两者作用都是用于排序 原理这里先插一句Collections和Collection的区别: java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口...

fast-fail机制

fast-fail机制,就是快速失败机制,它是java集合的一种错误检测机制,当多个线程对集合进行结构上的改变操作时,就有可能产生fast-fail机制(是有可能,而不是一定) fast-fail示例12345678910111213...

java集合框架之TreeSet

TreeSet介绍与HashSet是基于HashMap实现一样,TreeSet同样是基于TreeMap实现的,我们知道TreeMap是一个有序的二叉树,那么TreeSet肯定也是一个有序的,它的作用是提供Set集合。 本文源码均为JD...

java集合框架之HashSet

HashSet介绍对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素,若对Hashmap很熟悉,那么HashSet就很容易了 本文源码均为JDK1.8 HashSet源码解析定义HashSet继承...

java集合框架之HashTable

HashTable介绍先来看看HashMap和HashTable有哪些区别 关于null,HashMap运行key和value都可以为null,而HashTable不允许key或者value为null的键值对 当HashMa...

java集合框架之TreeMap

TreeMap概述TreeMap集合是基于红黑树(Red-Black tree,本片暂不介绍红黑树,后面单独写一篇 )的 NavigableMap实现。该集合最重要的特点就是可排序,该映射根据其键的自然顺序进行排序,或者根据创建映射时...

java集合框架之HashMap

HashMap概述HashMap是我们使用最多的的Collection,它是基于哈希表的Map接口的实现,以key-value的形式存储,系统会根据hash算法来计算key-value的存储位置。 HashMap最多只允许一条...

List集合之LinkedList

LinkedList概述LinkedList和ArrayList一样都是实现了List接口,只是ArrayList是可变数组的实现,LinkedList是链表实现。基于链表实现方式使得LinkedList在插入和删除时更优于Array...

List集合之ArrayList

本文若无特殊说明,源码均为JDK1.8list中常用的主要有ArrayList和Linkedlist,其中Vector,Stack并不常用。下图为List的框架图: 根据上图,逐个来看其各个类、接口:Collection:是根接口,其...