原文来自 https://community.oracle.com/docs/DOC-887721 我翻译了其中的问题,解答没有翻译, 有一定工作经验的人来说这二十五个问题百分之七十都属于常见题目不难,比较偏门的问题可以通过查看JavaDoc或源码明白。
1 HashMap如何工作
具体详细链接http://javarevisited.blogspot.com/2011/02/how-hashmap-works-in-java.html
2 Queue接口poll()方法和remove方法的不同之处
3 fail-fast迭代和fail-safe迭代不同之处
4 如何从Collection中删除一个entry,Collection的remove()方法和Iterator的remove()方法的不同之处,在遍历集合时选用哪个方法删除元素
5 同步集合和并发集合的不同之处
6 Iterator和Enumeration的不同之处
详细文章参考http://javarevisited.blogspot.com/2010/10/what-is-difference-between-enumeration.html
7 HashSet实现原理,hash函数如何实现
8 使用自定义对象作为Set的元素和Map的key 需要做什么
9 HashMap和Hashtable的不同之处
10 何时使用ConcurrentHashMap
11 Set和List的不同之处
12 如何排序集合中的对象
13 Vector和ArrayList的不同之处
14 HashMap和HashSet的不同之处
15 NavigableMap用来干什么,比起Map有什么好处
16 你是喜欢用数组还是ArrayList存储数据
17 是否可以使用Hashtable代替ConcurrentHashMap
18 CopyOnWriteArrayList的实现原理 它和ArrayList、Vector的不同之处
19 为什么ListIterator有add()方法,而Iterator没有add()方法
20 ConcurrentModificationException异常何时发生
21 Set Lis Map有什么不同之处
22 BlockingQueue有什么特效,与其它集合类有什么不同
23 LinkedListsh有什么特性 ,单向链表还是双向链表
24 遍历同步的HashMap是否需要加锁,为什么
25 Deque是什么,有什么特性 何时使用