Java集合框架深度解析:Collection与泛型

需积分: 9 0 下载量 14 浏览量 更新于2024-08-05 收藏 22KB MD 举报
"day02【Collection、泛型】-笔记" 在Java编程中,集合(Collection)和泛型是两个非常关键的概念,特别是在处理多个对象数据时。本笔记将深入探讨这两个主题,帮助你理解它们的功能和用法。 ### Collection集合 **集合概述**: 集合是Java提供的一种数据容器,它能容纳多个数据项。相比于数组,集合具有以下特点: 1. 数组长度固定,而集合的长度可以根据需要动态调整。 2. 数组可以存储基本类型,而集合只能存储对象。集合中的对象类型可以不同。 **集合框架**: Java集合框架包括一系列相互关联的接口和类,它们形成了一个复杂的类层次结构。主要分为单列集合`java.util.Collection`和双列集合`java.util.Map`。在本笔记中,我们将重点关注单列集合`Collection`,其中包括两个核心子接口:`java.util.List`和`java.util.Set`。 - **List**:有序的集合,允许元素重复,常见的实现类有`ArrayList`和`LinkedList`。 - **Set**:无序的集合,不允许元素重复,典型的实现类有`HashSet`和`TreeSet`。 ### 迭代器(Iterator) 迭代器是访问集合元素的标准方法,通过`iterator()`方法获取。它可以顺序访问集合中的元素,并且支持删除元素。 ### 增强for循环(foreach) 增强for循环简化了集合遍历,语法形式为`for (类型 item : 集合) { ... }`,无需手动创建迭代器。 ### 泛型 **泛型**引入了类型参数的概念,提高了代码的类型安全性和重用性。在定义集合时指定泛型,如`ArrayList<String>`,限制了集合只能存储String类型的对象。 #### 泛型的使用 - 定义泛型集合:`List<String> list = new ArrayList<String>();` - 泛型通配符:例如`<?>`表示任意类型,常用于方法参数,提高代码灵活性。 - 泛型上下限:如`List<? super Animal> list`表示列表可以存放任何Animal或其子类的对象。 理解这些概念有助于你更有效地使用Java集合和泛型,提高代码质量和可维护性。通过不断练习和实践,你将能够熟练掌握这些知识,并在实际开发中灵活运用。