前言
“金三银四、金九银十” 想必程序员应该都很熟悉吧,希望能帮助到你面试前的复习且找到一个好的工作,也节省你在网上搜索资料的时间来学习。
特此,整理了一份Java面试题手册:基础知识、JavaOOP、Java集合/泛型面试题、Java异常面试题、Java中的IO与NIO面试题、Java反射、Java序列化、Java注解、多线程&并发、JVM、Mysql、Redis、Memcached、MongoDB、Spring、SpringBoot、SpringCloud、RabbitMQ、Dubbo、MyBatis、ZooKeeper、数据结构、算法、Elasticsearch、Kafka、微服务、Linux等等。【持续更新中】
目录
序号 |
内容 |
|
1 |
【2022最新版】JavaOOP面试题总结 |
|
2 |
【2022最新版】多线程&并发面试题总结 |
|
3 |
【2022最新版】JVM面试题总结 |
|
4 |
【2022最新版】Mysql面试题总结 |
|
5 |
【2022最新版】Redis面试题总结 |
|
6 |
【2022最新版】Memcached面试题总结 |
|
7 |
【2022最新版】MongoDB面试题总结 |
|
8 |
【2022最新版】Spring面试题总结 |
|
9 |
【2022最新版】Spring Boot面试题总结 |
|
10 |
【2022最新版】Spring Cloud面试题总结 |
|
11 |
【2022最新版】RabbitMQ面试题总结 |
|
12 |
【2022最新版】Dubbo面试题总结 |
|
13 |
【2022最新版】MyBatis面试题总结 |
|
14 |
【2022最新版】ZooKeeper面试题总结 |
|
15 |
【2022最新版】数据结构面试题总结 |
|
16 |
【2022最新版】算法面试题总结 |
|
17 |
【2022最新版】Elasticsearch面试题总结 |
|
18 |
【2022最新版】Kafka面试题总结 |
|
19 |
【2022最新版】微服务面试题总结 |
|
20 |
【2022最新版】Linux面试题总结 |
Java集合/泛型面试题
1、ArrayList和linkedList的区别
答: Array(数组)是基于索引(index)的数据结构,它使用索引在数组中搜索和读取数据是很快的。
Array获取数据的时间复杂度是O(1),但是要删除数据却是开销很大,因为这需要重排数组中的所有数据,(因为删除数据以后,需要把后面所有的数据前移)
缺点:数组初始化必须指定初始化的长度,否则报错。
例如:
int[] a = new int[4];//推荐使用int[] 这种方式初始化int c[] = {23,43,56,78};//长度:4,索引范围:[0,3]
List—是一个有序的集合,可以包含重复的元素,提供了按索引访问的方式,它继承Collection。
List有两个重要的实现类:ArrayList和LinkedList。
ArrayList:可以看作是能够自动增长容量的数组。
ArrayList的toArr