1 |
说说常见的集合有哪些? |
2 |
常用的并发集合有哪些? |
3 |
哪些集合类可对元素的随机访问? |
4 |
Comparable 和 Comparator 接口的区别? |
5 |
Collection 和 Collections 的区别? |
6 |
Enumeration 和 Iterator 接口的区别? |
7 |
什么是泛型? |
8 |
集合使用泛型有什么优点? |
9 |
Java 泛型中的 T、R、K、V、E 是什么? |
10 |
List、Set、Map 之间的区别是什么? |
11 |
为什么 Map 接口不继承 Collection 接口? |
12 |
常用的线程安全的 Map 有哪些? |
13 |
HashMap 与 Hashtable 的区别? |
14 |
HashMap 和 TreeMap 怎么选? |
15 |
HashMap 的数据结构是什么? |
16 |
HashMap 键可以使用对象吗? |
17 |
HashMap 键可以使用可变对象吗? |
18 |
HashMap 在 JDK 8 中有哪些改变? |
19 |
JDK 8 HashMap 为啥要引入红黑树? |
20 |
JDK 8 HashMap 什么情况会用红黑树? |
21 |
JDK 8 HashMap 链表转红黑树,为啥是链表长度大于 8 才转?为什么是 8? |
22 |
JDK 8 HashMap 为啥不直接用红黑树? |
23 |
HashMap 的 put 方法逻辑? |
24 |
HashMap 的 get 方法逻辑? |
25 |
HashMap 是线程安全的吗? |
26 |
什么是 hash 冲突? |
27 |
HashMap 是怎么解决 hash 冲突的? |
28 |
HashMap 是怎么扩容的? |
29 |
HashMap 有没有容量限制? |
30 |
HashMap 如何实现同步? |
31 |
HashMap 中的负载因子是什么? |
32 |
HashMap 的负载因子为什么是 0.75? |
33 |
Map 集合怎么按插入顺序排序? |
34 |
Map 集合怎么按自然顺序排序? |
35 |
Map 集合怎么按访问顺序排序? |
36 |
Map 集合怎么按自定义规则排序? |
37 |
TreeMap 的数据结构是什么? |
38 |
Hashtable 为什么不叫 HashTable? |
39 |
ConcurrentHashMap 的数据结构? |
40 |
WeakHashMap 是哪种引用方式? |
41 |
WeakHashMap 有什么用? |
42 |
WeakHashMap 会导致内存溢出吗? |
43 |
WeakHashMap 和 HashMap 的关系? |
44 |
IdentityHashMap 和 HashMap 的区别? |
45 |
ArrayList 有没有容量限制? |
46 |
LinkedList 有没有容量限制? |
47 |
ArrayList 是线程安全的么? |
48 |
常用的线程安全的 List 集合有哪些? |
49 |
循环删除 List 集合可能会发生什么异常? |
50 |
编程实现删除 List 集合中的元素 |
51 |
怎么对一个 List 集合进行排序? |
52 |
List 和 Array 之间如何互相转换? |
53 |
List 遍历有哪几种方式? |
54 |
ArrayList 默认大小是多少,是如何扩容的? |
55 |
ArrayList 和 LinkedList 的区别? |
56 |
ArrayList 和 LinkedList 哪个更占空间? |
57 |
ArrayList 和 Vector 的区别? |
58 |
Arrays.asList 有什么使用限制? |
59 |
ArrayList 初始化 1 万条数据,怎么优化? |
60 |
ArrayList 为什么不是线程安全的? |
61 |
什么是 CopyOnWriteArrayList? |
62 |
什么是 fail-safe? |
63 |
什么是 fail-fast? |
64 |
fail-fast 与 fail-safe 有什么区别? |
65 |
HashSet 是线程安全的么? |
66 |
常用的线程安全的 Set 集合有哪些? |
67 |
HashSet 中的元素是有顺序的么? |
68 |
HashSet 怎么按插入顺序排序? |
69 |
HashSet 怎么按自然顺序排序? |
70 |
HashSet 的底层实现原理是什么? |
71 |
TreeSet 的数据结构是什么? |
72 |
怎么确保一个集合不能被修改? |