Java 集合面试题30 题
- 01 ArrayList 和 LinkedList 有什么区别?
- 02 Comparable 和 Comparator 有什么区别?
- 03 Java 集合框架的整体结构是怎样的?
- 04 ArrayList 扩容机制是什么?为什么查询快、插入慢?
- 05 CopyOnWriteArrayList 的原理是什么?适合什么场景?
- 06 HashMap 的底层原理是什么?put 和 get 的过程是怎样的?
- 07 HashMap 的容量为什么必须是 2 的幂?负载因子为什么是 0.75?
- 08 HashMap 链表长度为什么到 8 才转红黑树?为什么用红黑树而不是 AVL 树?
- 09 HashMap 为什么线程不安全?
- 10 HashMap、Hashtable、ConcurrentHashMap 有什么区别?
- 11 HashSet 如何保证元素不重复?
- 12 HashSet、LinkedHashSet、TreeSet 有什么区别?分别怎么选?
- 13 LinkedHashMap 是什么?如何用它实现 LRU 缓存?
- 14 PriorityQueue 的底层原理是什么?出队顺序是怎样的?
- 15 ConcurrentHashMap 是如何保证线程安全的?
- 16 Arrays 工具类有哪些常用方法?数组和 List 怎么互相转换?
- 17 Collections 工具类有哪些常用方法?它和 Collection 是什么关系?
- 18 什么是 fail-fast 和 fail-safe?
- 19 线程安全的 List 有哪些?同步容器和并发容器有什么区别?
- 20 Arrays.asList 有哪些坑?返回的 List 能 add 吗?
- 21 Collections.sort 和 Arrays.sort 用的是什么排序算法?TimSort 是什么?
- 22 EnumMap 和 EnumSet 是什么?为什么它们比 HashMap/HashSet 高效?
- 23 Iterator 和 ListIterator 有什么区别?for-each 遍历时能删除元素吗?
- 24 Java 怎么创建不可变集合?List.of 和 Collections.unmodifiableList 有什么区别?
- 25 List.subList 返回的是什么?为什么修改 subList 会影响原列表?
- 26 Queue 和 Deque 有什么区别?为什么用 ArrayDeque 而不是 Stack 和 LinkedList?
- 27 TreeMap 的底层原理是什么?和 HashMap 有什么区别?
- 28 WeakHashMap 是什么?它的 key 为什么会自动消失?适合什么场景?
- 29 ConcurrentSkipListMap 是什么?跳表是怎么工作的?为什么不用红黑树?
- 30 IdentityHashMap 是什么?它和 HashMap 有什么区别?
没有符合条件的题目。