自定义博客皮肤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(5)——get方法篇

********本篇主要介绍了HashMap源码中get方法部分********下面展示关于get方法的 HashMap底层源码。public V get(Object key) { Node<K,V> e; //先调用hash(key)计算hash值,然后调用 getNode方法 //如果不为null,就返回该节点的value return (e = getNode(hash(key), key)) == null ? null : e.value;}

2022-04-05 16:00:44 557

原创 慢慢攻略HashMap(4)——扩容方法篇

********本篇主要介绍了HashMap源码中resize方法部分********一、resize()源码及详细分析二、问题分析与核心代码详解一、resize()源码及详细分析final Node<K,V>[] resize() { //oleTab : 引用扩容之前的哈希表 Node<K,V>[] oldTab = table; //oldCap : 引用扩容之前的table数组的长度 int oldCap = (oldTab == null

2022-03-19 14:12:43 859

原创 慢慢攻略HashMap(3)——put方法篇

********本篇主要介绍了HashMap源码中put方法部分********下面展示关于put方法的 HashMap底层源码。public V put(K key, V value) { return putVal(hash(key), key, value, false, true);}由代码可见:实际上 put 只是套娃了一个 putVal 方法所以我们要去看一下putVal方法,从putVal方法的参数可以看出,里面包括了一个hash方法,参数为key:hash(key)

2022-03-14 19:48:09 1206

原创 慢慢攻略HashMap(2)——构造方法篇

********本篇主要介绍了HashMap源码中构造方法部分********下面展示关于构造方法的 HashMap底层源码。/** * Constructs an empty <tt>HashMap</tt> with the specified initial * capacity and load factor. * * @param initialCapacity the initial capacity * @para

2022-03-10 15:48:32 459 1

原创 慢慢攻略HashMap(1)——自我总结篇

********本篇主要介绍基本数据结构与HashMap的put get方法大概原理********一、相关数据结构介绍1.数组结构2.链表结构3.哈希表结构二、HashMap源码刨析HashMap中的put()和get()的实现原理:1.map.put(k,v)实现原理2.map.get(k)实现原理一、相关数据结构介绍1.数组结构特点:存储区间连续、内存占用大优点:通过数组下标可以快速定位想要查找的元素,从而可以快速高效率的进行查找与修改缺点:①添加与删除数据效率低,因为数组元素是连续且具有

2022-03-09 14:43:20 157

空空如也

空空如也

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

TA关注的人

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