必备干活!java高频面试题知识点和答案汇总

集合容器概述
1、什么是集合
2、集合的特点
3、集合和数组的区别
4、使用集合框架的好处
5、常用的集合类有哪些?
6、List,Set,Map三者的区别?List、Set、Map 是否继承自 Collection 接口?List、Map、Set 三个接口存取元素时,各有什么特点?
7、集合框架底层数据结构
8、哪些集合类是线程安全的?
9、Java集合的快速失败机制 “fail-fast”?
10、怎么确保一个集合不能被修改?
Collection接口
一、List接口
1、迭代器 Iterator 是什么?
2、Iterator 怎么使用?有什么特点?
3、如何边遍历边移除 Collection 中的元素?
4、Iterator 和 ListIterator 有什么区别?
5、遍历一个 List 有哪些不同的方式?每种方法的实现原理是什么?Java 中 List 遍历的最佳实践是什么?
6、说一下 ArrayList 的优缺点
7、如何实现数组和 List 之间的转换?
8、ArrayList 和 LinkedList 的区别是什么?
9、ArrayList 和 Vector 的区别是什么?
10、插入数据时,ArrayList、LinkedList、Vector谁速度较快?阐述 ArrayList、Vector、LinkedList 的存储性能和特性?
11、多线程场景下如何使用 ArrayList?
12、为什么 ArrayList 的 elementData 加上 transient 修饰?
13、List 和 Set 的区别
二、Set接口
1、说一下 HashSet 的实现原理?
2、HashSet如何检查重复?HashSet是如何保证数据不可重复的?
3、HashSet与HashMap的区别
三、Queue
1、BlockingQueue是什么?
2、在 Queue 中 poll()和 remove()有什么区别?
四、Map接口
1、说一下 HashMap 的实现原理?
2、HashMap在JDK1.7和JDK1.8中有哪些不同?HashMap的底层实现
3、JDK1.8之前
4、JDK1.8之后
5、JDK1.7 VS JDK1.8 比较
6、HashMap的put方法的具体流程?
7、HashMap的扩容操作是怎么实现的?
8、HashMap是怎么解决哈希冲突的?
9、什么是哈希?
10、什么是哈希冲突?
11、HashMap的数据结构
12、hash()函数
13、JDK1.8新增红黑树
总结
1、能否使用任何类作为 Map 的 key?
2、为什么HashMap中String、Integer这样的包装类适合作为K?
3、如果使用Object作为HashMap的Key,应该怎么办呢?
4、HashMap为什么不直接使用hashCode()处理后的哈希值直接作为table的下标?
5、HashMap 的长度为什么是2的幂次方
6、HashMap 与 HashTable 有什么区别?
7、如何决定使用 HashMap 还是 TreeMap?
8、HashMap 和 ConcurrentHashMap 的区别
9、ConcurrentHashMap 和 Hashtable 的区别?
10、ConcurrentHashMap 底层具体实现知道吗?实现原理是什么?
辅助工具类
1、Array 和 ArrayList 有何区别?
2、如何实现 Array 和 List 之间的转换?
3、comparable 和 comparator的区别?
4、Collection 和 Collections 有什么区别?
5、TreeMap 和 TreeSet 在排序时如何比较元素?Collections 工具类中的 sort()方法如何比较元素?

优质文章推荐:

1、【吊打面试官】redis高频面试题
2、【吊打面试官】spring boot高频面试知识点
3、【吊打面试官】spring高频面试知识点
4、【吊打面试官】linux高频面试知识点

答案详情如下:

Java高频面试题答案

#华为2020春招简历投递开始##Java工程师##春招##内推##实习##面经##笔经#
全部评论

相关推荐

04-22 15:13
已编辑
Java
点赞 评论 收藏
分享
评论
5
50
分享

创作者周榜

更多
牛客网
牛客企业服务