知识点/面试题总结 :
Java 集合常见知识点&面试题总结(上) (必看 👍)
- Java集合
- 集合概述
- Java 集合概览
- 说说 List, Set, Queue, Map 四者的区别?
- 集合框架底层数据结构总结
- List
- Set
- Queue
- Map
- 如何选用集合?
- 为什么要使用集合?
- Collection 子接口之 List
- Arraylist 和 Vector 的区别?
- Arraylist 与 LinkedList 区别?
- 补充内容:双向链表和双向循环链表
- 补充内容:RandomAccess 接口
- 说一说 ArrayList 的扩容机制吧
- Collection 子接口之 Set
- comparable 和 Comparator 的区别
- Comparator 定制排序
- 重写 compareTo 方法实现按年龄来排序
- 无序性和不可重复性的含义是什么
- 比较 HashSet、LinkedHashSet 和 TreeSet 三者的异同
- comparable 和 Comparator 的区别
- Collection 子接口之 Queue
- Queue 与 Deque 的区别
- ArrayDeque 与 LinkedList 的区别
- 说一说 PriorityQueue
Java 集合常见知识点&面试题总结(下) (必看 👍)
- Java集合
- Map 接口
- HashMap 和 Hashtable 的区别
- HashMap 和 HashSet 区别
- HashMap 和 TreeMap 区别
- HashSet 如何检查重复
- HashMap 的底层实现
- JDK1.8 之前
- JDK1.8 之后
- HashMap 的长度为什么是 2 的幂次方
- HashMap 多线程操作导致死循环问题
- HashMap 有哪几种常见的遍历方式?
- ConcurrentHashMap 和 Hashtable 的区别
- ConcurrentHashMap 线程安全的具体实现方式/底层具体实现
- JDK1.7(上面有示意图)
- JDK1.8 (上面有示意图)
- Collections 工具类
- 排序操作
- 查找,替换操作
- 同步控制
Java集合使用注意事项总结
- Java集合
- 集合判空
- 集合转 Map
- 集合遍历
- 集合去重
- 集合转数组
- 数组转集合
源码分析 :
- ArrayList 源码+扩容机制分析
- 简介
- 动态数组,
- 继承cloneable
- 实现List,RandomAccess,Cloneable,java.io.Serializable
- arraylist和vector的区别
- arraylist线程不安全
- vector线程安全
- Arraylist和LinkedList的区别
- 都不保证线程安全
- 底层数据结构
- Arraylist 底层Object数组
- LinkedList 底层双向链表
- 插入和删除是否受元素位置的影响
- arraylist数组,受影响
- linkedlist链表,插入删除不受影响;但是如果指定的话,那就受影响
- 是否支持快速随机访问
- arraylist支持
- 内存空间占用:
- arraylist在list结尾预留
- linkedlist每一个元素都多消耗
- 简介
- HashMap(JDK1.8)源码+底层数据结构分析
- ConcurrentHashMap 源码+底层数据结构分析
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,可以邮件至 963614756@qq.com。