写点什么

Java 集合源码学习笔记,Java 程序员面试必备基础知识

发布于: 2020 年 09 月 04 日

Java集合是我认为在Java基础中最最重要的知识点了,Java集合是必须掌握的。在实习/秋招面试的时候,只要是面到Java,那一定是少不了Java集合。

Java集合思维导图



Java集合源码笔记

笔记是全程手写出来的,希望大家拿到笔记后别丢进收藏夹吃灰!转发+关注,添加VX(tkzl66666)获取完整版《Java集合源码学习笔记》。

一、学习指南

1、Java集合学习指南



  • 1.1学习一项技术之前,必须知道为什么要学它!

  • 1.2如何入门学习Java集合

  • 1.3 集合进阶与面试



二、Collection

1、集合(Collection)介绍



  • 1.1为什么需要Collection

  • 1.2数组和集合的区别

  • 1.3Collection的由来与功能



2、迭代器(Iterator)介绍



3、List集合介绍



  • 3.1List集合常用子类



4、Set集合介绍



  • 4.1Set集合常用子类





三、List集合

1、ArrayList解析



  • 1.1构造方法

  • 1.2Add方法

  • 1.3 get方法

  • 1.4 set方法

  • 1.5remove方法

  • 1.6细节再说明



2、Vector与ArrayList区别



3、LinkedList解析



  • 3.1构造方法

  • 3.2add方法

  • 3.3remove方法

  • 3.4get方法

  • 3.5set方法



4、List集合总结





四、Map集合

1、Map介绍



  • 1.1为什么需要Map

  • 1.2Map与Collection的区别

  • 1.3Map的功能



2、散列表介绍



  • 2.1散列表工作原理



3、红黑树介绍



  • 3.1回顾二叉查找树

  • 3.2知新2-3树

  • 3.3从2-3树到红黑树

  • 3.4红黑树基础知识





五、HashMap

1、HashMap剖析



  • 1.1HashMap构造方法

  • 1.2put方法

  • 1.3get方法

  • 1.4remove方法



2、HashMap与Hashtable对比



3、HashMap总结





笔记是全程手写出来的,希望大家拿到笔记后别丢进收藏夹吃灰!转发+关注,添加VX(tkzl6666)获取完整版《Java集合源码学习笔记》

六、LinkedHashMap

1、LinkedHashMap



  • 1.1LinkedHashMap的域

  • 1.2LinkedHashMap重写的方法

  • 1.3构造方法

  • 1.4put方法

  • 1.5get方法

  • 1.6remove方法

  • 1.7遍历的方法



2、LinkedHashMap总结





七、TreeMap

1、TreeMap剖析



  • 1.1TreeMap的域

  • 1.2TreeMap构造方法

  • 1.3put方法

  • 1.4get方法

  • 1.5remove方法

  • 1.6遍历方法



2、TreeMap总结





八、ConcurrentHashMap

1、ConCurrentHashMap剖析



  • 1.1初识ConCurrentHashMap

  • 1.2JDK1.7底层实现

  • 1.3有了Hashtable为啥需要ConCurrentHashMap

  • 1.4CAS算法和volatile简单介绍

  • 1.5ConCurrentHashMap域

  • 1.6ConCurrentHashMap构造方法

  • 1.7put方法

  • 1.8get方法



2、ConcurrentHashMap总结





九、Set

  • 1、HashSet剖析

  • 2、TreeSet剖析

  • 3、LinkedHashSet剖析

  • 4、Set集合总结





十、CopyOnWriteArrayList

1、Vector和SynchronizedList



  • 1.1回顾线程安全的Vector和SynchronizedList

  • 1.2Vector和SynchronizedList可能会出现的问题



2、CopyOnWriteArrayList(Set)介绍



  • 2.1CopyOnWriteArrayList实现原理





十一、Java集合面试题

  • 1、ArrayList和Vector的区别

  • 2、HashMap和Hashtable的区别

  • 3、List和Map的区别

  • 4、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()?

  • 5、Collection和Collections的区别

  • 6、说出ArrayList,LinkedList的存储性能和特性

  • 7、Enumeration和Iterator接口的区别

  • 8、ListIterator有什么特点

  • 9、并发集合类是什么?

  • 10、Java中HashMap的key值要是为类对象则该类需要满足什么条件?

  • 11、与Java集合框架相关的有哪些最好的实践

  • 12、ArrayList集合加入1万条数据,应该怎么提高效率





用户头像

微信:tkzl6666 添加获取你想要的Java资料 2019.01.29 加入

添加VX(tkzl6666 ) 获取大厂面试真题,面试复习资料,Java进阶资料,Java实战项目。

评论 (1 条评论)

发布
用户头像
Java 集合源码学习笔记,Java 程序员面试必备基础知识
2020 年 09 月 04 日 09:59
回复
没有更多了
Java集合源码学习笔记,Java程序员面试必备基础知识