文章目录
- Java集合/泛型面试题
-
-
- 1、ArrayList和linkedList的区别
- 2、 HashMap和HashTable的区别
- 3、Collection包结构,与Collections的区别
- 4、泛型常用特点(待补充)
- 5、说说List、Set、Map、三者的区别?
- 6、Array与ArrayList有什么不一样?
- 7、Map有什么特点?
- 8、集合类存放于Java.util包中,主要有几种接口?
- 9、什么是list接口
- 10、说说ArrayList(数组)
- 11、Vector(数组实现、 线程同步)
- 12、说说LinkList(链表)
- 13、什么Set集合
- 14、HashSet(Hash表)
- 15、什么是TreeSet(二叉树)
- 16、说说LinkHashSet(HashSet+LinkedHashMap)
- 17、HashMap(数组+链表+红黑树)
- 18、说说ConcurrentHashMap
- 19、HashTable(线程安全)
- 20、TreeMap(可排序)
- 21、LinkHashMap(记录插入顺序)
- 22、泛型类
- 23、类型通配符?
- 24、类型擦除
-
- Java异常面试题
- Java中的IO与NIO面试题
- Java反射面试题
- Java序列化面试题
- Java注解面试题
- 总结
最近面试的小伙伴很多,对此我整理了一份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等等。
可以分享给大家学习。【持续更新中】
完整版Java面试题地址:【2021最新版】Java面试真题汇总
Java集合/泛型面试题
1、ArrayList和linkedList的区别
答: Array(数组)是基于索引(index)的数据结构,它使用索引在数组中搜索和读取数据是很快的。
Array获取数据的时间复杂度是O(1),但是要删除数据却是开销很大,因为这需要重排数组中的所有数据,(因为删除数据以后,需要把后面所有的数据前移)
缺点:数组初始化必须指定初始化的长度,否则报错。
例如:
int[] a = new int[4];//推荐使用int[] 这种方式初始化
int c[] = {