自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java面试关于HashMap常见问题

摘要: HashMap是Java中基于哈希表的Map实现,采用数组+链表+红黑树的数据结构。通过hashCode()计算键的哈希值,使用扰动函数处理后再通过位运算确定数组下标。当元素数量超过容量与负载因子(默认0.75)乘积时会扩容,容量翻倍并重新分配元素。链表会在长度超过8且数组容量≥64时转为红黑树,优化查询效率;当节点数降至6时退化回链表。关键参数包括初始容量(默认16)、负载因子、树化阈值(8)和最小树化容量(64),共同保证HashMap在大多数情况下保持O(1)的时间复杂度。

2025-07-24 23:58:33 1254

原创 Java面试关于HashSet常见问题

Set集合通过hashCode()和equals()方法过滤重复元素:先计算哈希值定位存储位置,若该位置已有元素则用equals()比较,相同则拒绝添加。重写hashCode()必须同时重写equals()以保持两者逻辑一致,否则会导致集合存储逻辑错误。哈希冲突是因有限哈希值空间无法避免不同对象映射到相同值,只能优化无法完全消除。

2025-07-24 23:26:01 581

原创 Java中ArrayList与LinkedList的区别

Java集合框架中ArrayList和LinkedList的核心对比:ArrayList基于动态数组实现,支持快速随机访问(O(1)),但插入删除需移动元素;LinkedList基于双向链表实现,插入删除高效(O(1)),但访问需遍历(O(n))。内存方面ArrayList更紧凑,LinkedList因节点存储额外指针开销更大。实际应用中,90%场景推荐ArrayList,仅在频繁中间操作时考虑LinkedList。两者均为线程不安全,需同步处理时建议使用Collections.synchronizedLi

2025-07-23 22:48:07 1281

原创 修改IDEA内双击Shift呼出Search everwhere(随处搜索)的快捷键的方法(PyCharm内同理)

解决双击Shift触发随处搜索影响编程效率的问题。1.在Keymap设置中找到Navigate目录下的Searcheverywhere,修改快捷键为其他;2.在高级设置中勾选disable double modifier key shortcuts

2025-07-23 20:41:19 342

空空如也

空空如也

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

TA关注的人

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