自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 HashMap的扩容机制------resize()

一:首先要知道HashMap什么时候扩容当元素向HashMap容器中添加元素的时候,会判断当前元素的个数,如果当前元素的个数大于等于阈值时,即当前数组table的长度*加载因子就要进行自动扩容。由于HashMap的底层数据结构是“链表散列”,即数组和链表的组合,而数组是无法自动扩容的,所以只能是换一个更大的数组去装填以前的元素和将要添加的新元素分析resize()方法的源代码可以发现:在jd...

2018-10-25 21:19:07 10401 2

翻译 Java内存回收之可达性分析算法

Java内存回收时的可达性分析算法也称为传递跟踪算法;Java中,是通过可达性分析算法来判断对象是否存活的。1:算法的思路通过一系列的“GC Roots”对象作为起点,开始向下搜索搜索所走过的路径称为引用链;当一个对象到GC Roots没有任何引用链时(即从GC Roots到这个对象不可达),则证明该对象不可用Java中的对象都链接在一个个根节点上,所以内存中会有许多的根节点(即GC...

2018-10-25 09:10:59 740

转载 HashTable的底层分析

HashTable的底层原理一:数据结构和HashMap的数据结构是一样的二:源码分析HashTable的主要方法的源码和HashMap类似,最重要的区别是她所有的操作都是通过synchronized锁定保护的只有获得了对应的锁才能进行后续的读写操作三:HashTable和HashMap的区别HashMap是非同步的,没有对读写等操作进行锁保护,所以是线程不安全的,在多线程场景下会出...

2018-10-22 22:07:26 997

翻译 HashMap的底层分析

标题HashMap的底层结构HashMap是基于哈希表的Map接口实现,以key-value的形式存在。在HashMap中,key-value总是以一个整体来处理系统会根据hash算法来计算key-value的存储位置,我们总是可以通过key快速的存取value**一:**定义HashMap实现了Map接口,继承AbstractMap。其中Map接口定义了键映射到值的原则而Abstract...

2018-10-22 21:57:29 213

原创 JAVA封装数据类型和基本数据类型的比较

一:使用==比较不同封装数据类型的比较会出现编译出错 public static void main(String[] args) { Integer integer=5; Long aa=5l; System.out.println(integer==aa);//此处报错 } 相同的封装数据...

2018-08-15 15:47:30 1624

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除