自定义博客皮肤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)
  • 收藏
  • 关注

原创 死磕Java集合之BitSet源码分析(JDK18)

因为Java中没有new bit[]这种直接创建一个bit数组的方式,所以Java提供了BitSet来实现位图,BitSet是采用一个long型的数组来实现位图的。BitSet的首个long型数组表示的是[0, 63]这64个元素。BitSet中的实现充分利用了位运算,速度很快,因为是位图,所以占用空间也比较小。下面是boolean数组和BitSet的空间占用对比可以看出boolean数组,占用的空间是1040 bytes,BitSet占用的空间是24 + 144 = 168 bytes。

2023-02-21 01:16:14 200

原创 关于LeetCode每日一题打卡失败的感悟

背景今年5月,报名参加了三叶姐的“五月打卡活动”,押金29.9元,要求每天在力扣上每日一题打卡,完成则押金全退,完不成则押金不退。事件2022.5.10,LeetCode上的每日一题是一个困难题,自己一直拖延,不想去做题,事实上,真正开始做题,是从晚上10点才开始的,中途因为解题思路复杂,多次中途去看小说刷抖音。最后导致因为自己代码有点小瑕疵需要调试,调试时间超过了当天的24点,就这样错过了每日一题打卡。感受当时感觉很沮丧,因为自己已经坚持好几个月的每日一题打卡,这次三叶姐的“五月打卡”

2022-05-11 16:40:59 1076

原创 死磕java集合之CopyOnWriteArrayList源码分析(JDK18)

死磕java集合之CopyOnWriteArrayList源码分析(JDK18)简介CopyOnWriteArrayList是ArrayList的线程安全版本,内部也是通过数组实现,每次对数组的修改都完全拷贝一份新的数组来修改,修改完了再替换掉老数组,这样保证了只阻塞写操作,不阻塞读操作,实现读写分离。继承体系CopyOnWriteArrayList实现了List, RandomAccess, Cloneable, java.io.Serializable等接口。CopyOnWriteArray

2022-05-09 22:44:50 165

原创 死磕java集合之ArrayList源码分析(JDK18)

死磕java集合之ArrayList源码分析(JDK18)简介ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可称之为动态数组。继承体系ArrayList实现了List, RandomAccess, Cloneable, java.io.Serializable等接口。ArrayList实现了List,提供了基础的添加、删除、遍历等操作。ArrayList实现了RandomAccess,提供了随机访问的能力。ArrayList实现了Cloneable,可

2022-05-09 17:06:15 306

原创 死磕java集合之PriorityQueue源码分析(JDK18)

参照彤哥的死磕集合系列,死磕jdk18的集合相关类

2022-05-09 17:00:05 176 1

空空如也

空空如也

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

TA关注的人

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