Java集合面试题

落花浮王杯 提交于 2019-11-27 20:46:02
List
·       List 和 Set 区别
·       Set和hashCode以及equals方法的联系
·       List 和 Map 区别
·       Arraylist 与 LinkedList 区别
·       ArrayList 与 Vector 区别
·       Arraylist与LinkedList默认空间是多少;
·       Arraylist与LinkedList区别与各自的优势List 和 Map 区别;
 Java Collections和Arrays的sort方法默认的排序方法是什么;
       ArrayList和LinkList的删除一个元素的时间复杂度;(ArrayList是O(N),LinkList是O(1));
·       CopyOnWriteArrayList是什么;
 
Set
·       HashMap 和 Hashtable 的区别
·       HashSet 和 HashMap 区别
·       HashMap 和 ConcurrentHashMap 的区别
·       HashMap 的工作原理及代码实现,什么时候用到红黑树
·       多线程情况下HashMap死循环的问题
·       HashMap出现Hash DOS攻击的问题
·       ConcurrentHashMap 的工作原理及代码实现,如何统计所有的元素个数
·       手写简单的HashMap
·       看过那些Java集合类的源码
 
 
Map
·       谈谈HashMap,哈希表解决hash冲突的方法;
·       为什么要重写hashcode()和equals()以及他们之间的区别与关系;
·       Object的hashcode()是怎么计算的?
·       若hashcode方法永远返回1或者一个常量会产生什么结果?
·      
·       String s="abc"和String s=new String("abc")区别;
·       HashSet方法里面的hashcode存在哪,如果重写equals不重写hashcode会怎么样?
·       怎么解决Hash冲突;(开放地址法、链地址法、再哈希法、建立公共溢出区等)
·       Set内存放的元素为什么不可以重复,内部是如何保证和实现的?
·       说一下TreeMap的实现原理?红黑树的性质?红黑树遍历方式有哪些?如果key冲突如何解决?setColor()方法在什么时候用?什么时候会进行旋转和颜色转换?
·
·       HashMap在什么时候时间复杂度是O(1),什么时候是O(n),什么时候又是O(logn);
·       详细讲一下集合,HashSet源码,HashMap源码,如果要线程安全需要怎么做?

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!