随笔分类 - 集合
描述自己对集合这块内容的理解
摘要:#jdk1.7 ##数据结构 1.7的时候底层是由segments数组+HashEntry数组+链表组成的,在1.8的时候又不同。 // segments数组 final Segment<K,V>[] segments; static final class Segment<K,V> extends
阅读全文
摘要:#前言 我们知道HashMap是线程不安全的,那么当我们要在多线程的情况下,应该怎么办呢? 在多线程场景下,我们一般采用下面的几种方式去创建线程安全的map集合 采用Collections.synchronizedMap(Map) 采用Hashtable 采用ConcurrentHashMap 通常
阅读全文
摘要:#ArrayList ArrayList就是数组列表,是一个动态数组,其容量能自动增长。 特点:查询效率高,增删效率低,线程不安全,日常使用频率高。 public class ArrayList<E> extends AbstractList<E> implements List<E>, Rando
阅读全文
摘要:#jdk1.7中的HashMap ##扩容部分源码 扩容分为两步 1.创建一个数组容量为原来2倍的HashMap 2.遍历旧的Entry数组,把所有的Entry重新Hash到新数组 在开始之前我们先看一下扩容部分的源码 void transfer(Entry[] newTable, boolean
阅读全文

浙公网安备 33010602011771号