蚂蚁集团 Java后端 一面面经24校招
- 问项目:面试官首先让我介绍了一下自己参与的项目,详细询问了项目中的技术细节和我的具体贡献。
- HashMap怎么解决冲突?怎么判断key相等?:我解释了HashMap的冲突解决方法和key相等的判断机制。
- HashCode对数组长度取模定位数组下标,这一块有没有什么优化策略?:我提到了高低位异或运算,但感觉自己解释得不够清楚。
- 为什么要用高低做异或运算?为什么非得高低16位做异或?:面试官进一步深挖这个问题,我有些不知所措。
- 讲讲ThreadLocal?ThreadLocalMap被谁引用?:我详细讲解了ThreadLocal的工作原理和引用关系。
- ConcurrentHashMap怎么保证可见性?如果用volatile修饰,那么这个被修饰的共享字段是什么?:我解释了ConcurrentHashMap的可见性保证机制和volatile的使用。
- 举簇和非举簇索引的区别?B+树叶子节点除了存储数据还有什么?:我回答了索引的区别和B+树叶子节点的存储内容。
- 二级索引叶子节点存储的是什么?索引下推是什么?:我解释了二级索引叶子节点的存储内容和索引下推的概念。
- 手撕代码:删除字符串列表中包含指定字符的所有元素,给出Java代码:我写了一个Java代码实现这个功能,面试官表示满意。
#软件开发笔面经#