自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HashMap源码笔记

get(key)方法也要用到寻址公式,先把key寻址公式,确定是在哪个位置,然后进那个链表去遍历。//缺省table(数组)大小,为16,1左移4位。//树化阈值(链表长度超过8之后,链表可能变为树)关键方法:putVal()和resize()//table(数组)最大长度(容量)有某一个链表上元素≥8时,才会树化))大于等于64个时,才会允许树化(也就是size大于12时,就扩容。//树降级为链表的阈值。

2025-02-23 15:35:17 458

原创 Timer源码学习

如图所示,多个任务会加入到taskQueue中,会自动排,队首任务一定是最早执行的任务;TimerThread会一直循环执行,从TaskQueue取队首任务,判断当前任务是否已经到了任务执行时间点,如果是,则执行任务。Timer有3个重要的模块,分别是 TimerTask, TaskQueue, TimerThread。,任务队列,TimerTask加入后会按执行时间自动排序。,工作线程,真正循环执行TimerTask的线程。Timer|TimerTask源码学习。

2025-02-23 15:27:08 254

原创 Lambda表达式

在数学中,就是有输入量、输出量的一套计算方案,也就是“拿什么东西做什么事情”。相对而言,面向对象过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——。我们真的希望创建一个匿名内部类对象吗?不。我们只是为了做这件事情而创建一个对象。我们真正希望做的事情是:将run方法体内的代码传递给Thread类知晓。——这才是我们真正的目的。而创建对象只是受限于面向对象语法而不得不采取的一种手段方式。那,有没有更加简单的办法?

2024-01-24 23:38:26 1458 2

空空如也

空空如也

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

TA关注的人

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