随笔分类 -  Java 集合

摘要:简介 TreeSet就是一个集合,里面不能有重复的元素,但是元素是有序的。 TreeSet其实就是调用了TreeMap实现的,所以,它也不是线程安全的。可以实现自然排序或者根据传入的Comparator进行排序。 TreeSet通过iterator()返回的迭代器是fail-fast的。 TreeS 阅读全文
posted @ 2020-12-09 10:20 lippon 阅读(138) 评论(0) 推荐(0)
摘要:简介 HashSet就是一个集合,里面不能有重复的元素,元素也是无序的。 HashSet其实就是调用了HashMap实现的,所以,它也不是线程安全的。 HashSet通过iterator()返回的迭代器是fail-fast的。 源码分析 由于HashSet的源码很短也很容易理解,这里就不再选取分析了 阅读全文
posted @ 2020-12-09 09:42 lippon 阅读(146) 评论(0) 推荐(0)
摘要:简介 WeakHashMap 继承于AbstractMap,实现了Map接口。 和HashMap一样,WeakHashMap 也是一个散列表,它存储的内容也是键值对(key-value)映射,而且键和值都可以是null。 不一样的是,JDK1.8开始,HashMap中引入了红黑树,节点名从entry 阅读全文
posted @ 2020-12-08 10:43 lippon 阅读(152) 评论(0) 推荐(0)
摘要:简介 TreeMap 是一个有序的key-value集合,它的内部是通过红黑树实现的。 TreeMap 继承于AbstractMap,所以它是一个Map,即一个key-value集合。 TreeMap 实现了NavigableMap接口,说明它支持一系列的导航方法。比如返回有序的key集合。 Tre 阅读全文
posted @ 2020-12-07 19:52 lippon 阅读(148) 评论(0) 推荐(0)
摘要:目录 简介源码分析父类接口字段内部类1.链表节点结构2.树根结构3.树节点结构 方法1.构造方法2.基本并发方法3.初始化表数组的操作4.修改添加元素5.统计元素数量6.扩容7.获取元素 总结源码总结1.扩容2.树化3.计数 简介 ConcurrentHashMap 是一个线程安全的散列表,存储的内 阅读全文
posted @ 2020-12-03 11:36 lippon 阅读(167) 评论(0) 推荐(0)
摘要:简介 HashMap 是一个散列表,存储的内容是键值对映射。 HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。 HashMap 存储的键值对是无序的。 源码分析 public class HashMap<K,V> exte 阅读全文
posted @ 2020-12-02 11:32 lippon 阅读(152) 评论(0) 推荐(0)
摘要:简介 Vector 是矢量队列,它是JDK1.0版本添加的类。继承于AbstractList,实现了List, RandomAccess, Cloneable这些接口。 和ArrayList不同,Vector中的操作是线程安全的。 源码分析 public class Vector<E> extend 阅读全文
posted @ 2020-12-01 10:12 lippon 阅读(122) 评论(0) 推荐(0)
摘要:简介 LinkedList是一个链表结构的列表,也可以被作为堆栈、队列或双端队列使用。它继承于AbstractSequentialList双向链表,实现了List、Deque、Cloneable、java.io.Serializable接口。 源码分析 public class LinkedList 阅读全文
posted @ 2020-11-30 11:09 lippon 阅读(136) 评论(0) 推荐(0)
摘要:简介 ArrayList 是一个数组列表,相当于 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。 其继承关系如下: 源码分析 这里的代码是J 阅读全文
posted @ 2020-11-29 20:08 lippon 阅读(130) 评论(0) 推荐(0)
摘要:集合框架 集合框架如图所示 Java集合是Java提供的工具包,主要包括常用的数据结构,包括:集合、链表、队列、栈、数组、映射等。 集合的工具包位置是java.util.* 集合主要可以分为五类: List列表;Set集合;Map映射;Queue队列工具类(Iterator迭代器、Enumerati 阅读全文
posted @ 2020-11-29 16:14 lippon 阅读(106) 评论(0) 推荐(0)