自我介绍:简要介绍自己的工作经历和项目经验。
基础问题:涉及 Java 基础知识,如面向对象编程(OOP)、集合框架、异常处理等。
项目经验:简要介绍参与过的项目,重点是使用的技术栈和解决问题的方法。
肯德基KFCjava后端面试题
说说hashmap数据结构(数组+链表,链表长度超过8此链表转为红黑树
以下问题问的很细,我用红色标注面试官的提问。
ArrayList和LinkedList区别,ArrayList有初始容量吗,你看的是jdk几版本 ,容量不够怎么办 ,扩容为多大 ,如果Arraylist当前容量是10,且有9个数据,那么是添加第10个数据时扩容还是第11个,扩容怎么实现的,为什么采用复制数组的方式而不是往后直接添加数据
ArrayList 初始容量10,在添加第 11 个元素时自动扩容,容量变为原容量的 1.5 倍,并通过复制数组的方式实现扩容,好处如下
连续存储:ArrayList 使用一个连续的数组来存储元素,这样可以快速访问和遍历元素。
内存效率:通过复制数组,可以确保数组始终保持连续存储,避免了数组中间插入元素导致的复杂性和性能开销。
线性增长:通过每次增加 1.5 倍的容量,可以在一定程度上减少频繁的扩容操作,提高整体性能。
你是通过何种渠道获得这次面试机会的?
答:网上申请
你觉得这次面试的难度如何?
答:困难
你对这次面试的整体感觉怎么样?
答:一般
这次面试的结果如何?
答:面试未得到工作