# Java集合框架精讲:从数组陷阱到集合 mastery
在Java开发的进阶之路上,集合框架是绕不开的的核心堡垒。很多初学者习惯了数组的固定长度,直到遇到“需要动态增删元素”的需求时,才惊觉传统数组的局限。本课程专为希望夯实Java基础、突破数据结构瓶颈的学习者设计,无论你是刚完成语法入门的学员,还是希望系统梳理知识体系的开发者,都能从中受益。学习本课前,你需具备基础的面向对象编程能力,理解类与对象的概念,这将帮助你更顺畅地融入后续的深度讲解。
课程伊始,我们将深入剖析引用数据类型与对象数组的内存布局(1-1, 1-2)。通过内存图可视化,你将清晰理解对象引用如何在堆内存中指向具体实例,这是后续理解集合底层逻辑的基石。紧接着,课程直击灵魂三问:为什么会有集合?数组与集合究竟有何本质区别?集合的继承体系是如何构建的?(1-3至1-6)答案不仅关乎API的使用,更关乎对“可变长度”、“统一接口”与“多态抽象”等设计思想的深刻领悟。
核心章节聚焦于Collection接口的全方位拆解。从基础的增删改查(1-7, 1-8),到容易被忽视的返回值机制——例如ArrayList.add()为何返回boolean(1-9),再到清除、包含判断等进阶成员方法(1-10, 1-11),每一个方法都配有源码级解读。特别值得注意的是迭代器的奥秘(1-12至1-15):我们不仅讲解如何用iterator遍历集合,更深入分析其内部指针移动机制与并发修改异常的根源,帮助你养成“迭代时不直接修改集合”的良好编程习惯。
随后,课程将镜头推向List集合的特化世界(1-16至1-22)。作为最常用的子接口,List实现了有序、可重复、有索引的特性。我们将逐一演示添加、删除、获取、修改功能的细节差异,并通过学生对象集合的遍历练习(1-14, 1-20)巩固知识。最后,重点讲解List独有的快速遍历方式——get方法与索引遍历,以及ListIterator双向迭代器的使用边界与注意事项(1-21, 1-22),让你在面对复杂业务场景时,能根据性能需求灵活选择最佳遍历策略。
学完本课后,你将不再畏惧复杂的容器操作,能够独立设计出高效、安全的集合处理逻辑,从容应对面试中的高频考点。建议在观看视频时,务必暂停跟随代码演练,不要仅做旁观者;课后请结合实际业务场景,尝试用不同方式重写练习案例,将知识真正内化为你的开发本能。
课程目录
课程目录99 集
- 1-1 [Java集合精讲] 引用数据类型数组 (21:40).mp4
- 1-2 [Java集合精讲] 对象数组的内存图 (07:52).mp4
- 1-3 [Java集合精讲] 集合概述 (04:22).mp4
- 1-4 [Java集合精讲] 为什么会有集合 (05:09).mp4
- 1-5 [Java集合精讲] 数组和集合的区别 (04:46).mp4
- 1-6 [Java集合精讲] 集合的继承体系 (10:34).mp4
- 1-7 [Java集合精讲] Collection概述及成员方法的使用 (14:49).mp4
- 1-8 [Java集合精讲] Collection集合的成员方法使用 (06:32).mp4
- 1-9 [Java集合精讲] ArrayList的add方法的返回值是什么 (04:34).mp4
- 1-10 [Java集合精讲] Collection的其他的成员方法1 (09:41).mp4
- 1-11 [Java集合精讲] Collection成员方法讲解 (09:56).mp4
- 1-12 [Java集合精讲] 集合的遍历 (20:29).mp4
- 1-13 [Java集合精讲] 迭代器的源码分析 (11:10).mp4
- 1-14 [Java集合精讲] 遍历学生对象集合的练习 (17:42).mp4
- 1-15 [Java集合精讲] 迭代器对象使用的注意事项 (06:19).mp4
- 1-16 [Java集合精讲] List集合概述 (10:46).mp4
- 1-17 [Java集合精讲] List集合的添加功能讲解 (07:37).mp4
- 1-18 [Java集合精讲] List集合的删除和获取功能 (07:47).mp4
- 1-19 [Java集合精讲] List集合的修改功能 (03:26).mp4
- 1-20 [Java集合精讲] List集合的练习讲解 (06:23).mp4
- 1-21 [Java集合精讲] List集合的独有遍历方式 (12:39).mp4
- 1-22 [Java集合精讲] 使用ListIterator的注意事项 (05:18).mp4
- 1-23 [Java集合精讲] 并发修改异常出现的原因 (08:00).mp4
- 1-24 [Java集合精讲] 并发修改异常的两种解决方案 (07:44).mp4
- 1-25 [Java集合精讲] List集合的练习之遍历学生对象 (04:59).mp4
- 1-26 [Java集合精讲] List的子类的区别 (08:30).mp4
- 1-27 [Java集合精讲] 栈的数据结构讲解 (06:50).mp4
- 1-28 [Java集合精讲] 队列的数据结构 (03:21).mp4
- 1-29 [Java集合精讲] 数组的数据结构 (16:52).mp4
- 1-30 [Java集合精讲] 链表概述和分析 (08:52).mp4
- 1-31 [Java集合精讲] 对链表执行添加元素操作 (09:06).mp4
- 1-32 [Java集合精讲] 对链表执行查找和删除操作 (06:54).mp4
- 1-33 [Java集合精讲] List接口的三个实现类的应用场景 (05:46).mp4
- 1-34 [Java集合精讲] List集合子类的练习 (09:13).mp4
- 1-35 [Java集合精讲] Vector独有的功能 (14:33).mp4
- 1-36 [Java集合精讲] LinkedList独有的功能 (17:40).mp4
- 1-37 [Java集合精讲] 栈的原理讲解 (08:41).mp4
- 1-38 [Java集合精讲] 栈的创建和测试 (04:59).mp4
- 1-39 [Java集合精讲] 栈的使用注意事项 (04:59).mp4
- 1-40 [Java集合精讲] 队列的实现思路 (08:17).mp4
- 1-41 [Java集合精讲] 练习去除List集合中重复的字符串 (14:00).mp4
- 1-42 [Java集合精讲] 练习去除List集合中重复的字符串方式二 (10:24).mp4
- 1-43 [Java集合精讲] 删除集合中重复字符串的注意事项 (15:35).mp4
- 1-44 [Java集合精讲] 泛型的概念 (02:31).mp4
- 1-45 [Java集合精讲] 泛型的由来 (11:07).mp4
- 1-46 [Java集合精讲] 泛型的应用及好处 (11:40).mp4
- 1-47 [Java集合精讲] 泛型的注意事项 (04:34).mp4
- 1-48 [Java集合精讲] 泛型集合存储并遍历学生对象 (05:39).mp4
- 1-49 [Java集合精讲] 泛型集合存储自定义学生对象并去重 (20:08).mp4
- 1-50 [Java集合精讲] 泛型的应用场景 (03:06).mp4
- 1-51 [Java集合精讲] 如何定义一个泛型类 (22:56).mp4
- 1-52 [Java集合精讲] 泛型方法的定义 (09:16).mp4
- 1-53 [Java集合精讲] 泛型方法的应用场景 (03:59).mp4
- 1-54 [Java集合精讲] 定义泛型类、泛型方法的注意事项 (03:01).mp4
- 1-55 [Java集合精讲] 泛型接口的定义 (03:43).mp4
- 1-56 [Java集合精讲] 泛型接口的两种实现方式 (12:27).mp4
- 1-57 [Java集合精讲] 泛型通配符的概念和种类 (04:12).mp4
- 1-58 [Java集合精讲] 泛型通配符出现的原因 (15:55).mp4
- 1-59 [Java集合精讲] 泛型通配符之向下限定 (07:46).mp4
- 1-60 [Java集合精讲] 向上限定通配符 (06:39).mp4
- 1-61 [Java集合精讲] 泛型高级知识 (19:54).mp4
- 1-62 [Java集合精讲] 增强for循环的使用格式和演示 (09:16).mp4
- 1-63 [Java集合精讲] 增强for的注意事项及底层原理 (05:41).mp4
- 1-64 [Java集合精讲] 增强for练习 (04:20).mp4
- 1-65 [Java集合精讲] 静态导入 (09:30).mp4
- 1-66 [Java集合精讲] 可变形参的格式和本质 (12:49).mp4
- 1-67 [Java集合精讲] 可变形参的注意事项 (06:25).mp4
- 1-68 [Java集合精讲] 用Arrays的asList方法把数组转换成list集合 (09:18).mp4
- 1-69 [Java集合精讲] 集合练习之嵌套遍历 (20:36).mp4
- 1-70 [Java集合精讲] 集合练习之生成10个1到20之间的随机数 (12:08).mp4
- 1-71 [Java集合精讲] 集合练习之求录入数据最大值的思路分析 (03:33).mp4
- 1-72 [Java集合精讲] 集合练习之求录入数据最大值的代码实现 (12:28).mp4
- 1-73 [Java集合精讲] Set集合概述 (09:19).mp4
- 1-74 [Java集合精讲] Set集合和List集合添加null值的区别 (19:01).mp4
- 1-75 [Java集合精讲] Set集合的去重原理推断 (10:10).mp4
- 1-76 [Java集合精讲] Set集合的去重原理推断2 (10:58).mp4
- 1-77 [Java集合精讲] HashSet的数据结构分析 (09:04).mp4
- 1-78 [Java集合精讲] HashSet去重步骤分析讲解 (25:15).mp4
- 1-79 [Java集合精讲] hashCodef方法的重写 (17:35).mp4
- 1-80 [Java集合精讲] HashSet集合的练习 (08:35).mp4
- 1-81 [Java集合精讲] LinkedHashSet集合概述 (09:58).mp4
- 1-82 [Java集合精讲] TreeSet概述 (12:21).mp4
- 1-83 [Java集合精讲] TreeSet集合的数据结构概述 (07:44).mp4
- 1-84 [Java集合精讲] TreeSet集合的排序原理分析 (16:04).mp4
- 1-85 [Java集合精讲] 自然排序的依据之comparable接口 (12:15).mp4
- 1-86 [Java集合精讲] 自然排序的依据之comparable接口2 (16:50).mp4
- 1-87 [Java集合精讲] 让对象实现Comparable接口的代码演示 (26:52).mp4
- 1-88 [Java集合精讲] TreeSet集合用比较器对象进行比较排序 (19:54).mp4
- 1-89 [Java集合精讲] HashSet集合的练习 (09:40).mp4
- 1-90 [Java集合精讲] TreeSet集合练习的分析过程 (06:30).mp4
- 1-91 [Java集合精讲] TreeSet集合练习的代码实现 (19:11).mp4
- 1-92 [Java集合精讲] TreeSet集合的练习的注意事项 (15:14).mp4
- 1-93 [Java集合精讲] 补充讲解TreeSet集合的比较器的局部内部类实现方式 (03:35).mp4
- 1-94 [Java集合精讲] Map集合概述 (11:54).mp4
- 1-95 [Java集合精讲] Map集合的继承体系 (12:32).mp4
- 1-96 [Java集合精讲] Map集合的添加和修改功能 (14:48).mp4
- 1-97 [Java集合精讲] Map集合的删除功能 (05:06).mp4
- 1-98 [Java集合精讲] HashMap中如何判断添加的键和集合中的键一样 (05:25).mp4
- 1-99 [Java集合精讲] HashMap的判断功能 (05:07).mp4
- 1-100 [Java集合精讲] HashMap的获取功能 (06:42)
- 1-101 [Java集合精讲] Map的获取功能2及Map的遍历方式 (17:54)
- 1-102 [Java集合精讲] Map集合的第二种遍历方式 (05:10)
- 1-103 [Java集合精讲] HashMap的练习 (13:58)
- 1-104 [Java集合精讲] HashMap练习2 (07:45)
- 1-105 [Java集合精讲] HashMap练习3 (16:25)
- 1-106 [Java集合精讲] LinkedHashMap讲解 (09:29)
- 1-107 [Java集合精讲] TreeMap集合讲解 (14:04)
- 1-108 [Java集合精讲] TreeSet集合讲解2 (14:40)
- 1-109 [Java集合精讲] TreeMap集合3 (11:11)
- 1-110 [Java集合精讲] 集合的嵌套遍历练习 (15:05)
- 1-111 [Java集合精讲] 集合的嵌套遍历练习2 (14:14)
- 1-112 [Java集合精讲] 统计字符串中字符出现次数的思路分析 (10:19)
- 1-113 [Java集合精讲] 统计字符串中字符出现次数的代码实现 (15:56)
- 1-114 [Java集合精讲] Hashtable的讲解 (13:01)
- 1-115 [Java集合精讲] Collections概述及sort方法讲解 (11:16)
- 1-116 [Java集合精讲] Collections类的sort方法讲解 (08:44)
- 1-117 [Java集合精讲] Collections类的sort方法排序2 (08:38)
- 1-118 [Java集合精讲] Collections的二分查找 (06:28)
- 1-119 [Java集合精讲] Collections的二分查找2 (05:42)
- 1-120 [Java集合精讲] Collections求最大值 (03:49)
- 1-121 [Java集合精讲] Collections的反转和置换功能 (03:35)
- 1-122 [Java集合精讲] 集合总结 (15:38)






