单列集合

本文介绍了Java中的Collection集合接口及其子接口List和Set,列举了ArrayList、LinkedList、HashSet等常见实现,并详细阐述了Collection的常用方法如add、remove、contains等。此外,还讲解了迭代器的使用、增强for循环遍历集合,以及泛型的概念、好处和用法,包括泛型类、泛型方法和泛型接口。最后,提到了泛型的通配符及其限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Collection集合(接口)

在这里插入图片描述
概述: 单列集合:顶层集合Collection接口

List集合元素有索引,元素存取有序,并且元素可以重复

ArrayList 最常见
LinkedList
Vector

Set集合元素无索引,元素存取无序,并且元素不可以重复

HashSet
LinkedHashSet
TreeSet

双列集合:顶层集合Map
    HashMap     最常见
    LinkedHashMap
    TreeMap

Collection集合:Collection集合是单列集合,是所有单列集合的顶层接口
子接口:
List集合:Set集合:

特点: Collection集合中定义的方法在所有单列集合中都可以使用
Collection集合的常用方法

  • public boolean add(E e): 把给定的对象添加到当前集合中 。

  • public void clear() :清空集合中所有的元素。

  • public boolean remove(E e): 把给定的对象在当前集合中删除。
    Collection集合之 迭代器和增强for循环- public boolean contains(E e): 判断当前集合中是否包含给定的对象。

  • public boolean isEmpty(): 判断当前集合是否为空。

  • public int size(): 返回集合中元素的个数。

  • public Object[] toArray(): 把集合中的元素,存储到数组中。

单列集合(Single Column Collection)是指在 Java 集合框架中用于存储和操作一组对象的接口和类。这些集合通常用于处理单列数据,即每个元素是一个单独的对象,而不是键值对形式的双列数据。`Collection` 接口是单列集合的核心接口,它定义了通用的操作方法,如添加、删除、遍历等 [^1]。 ### 单列集合的定义 单列集合的核心是 `Collection` 接口,它是整个集合框架的基础。`Collection` 接口及其子接口(如 `List`、`Set` 和 `Queue`)定义了如何存储、操作和检索一组对象。这些接口的实现类(如 `ArrayList`、`HashSet` 和 `LinkedList`)提供了具体的功能实现 [^2]。 - **List**:有序且允许重复元素集合。常见的实现类有 `ArrayList`、`LinkedList` 和 `Vector`。 - **Set**:无序且不允许重复元素集合。常见的实现类有 `HashSet`、`TreeSet` 和 `LinkedHashSet`。 - **Queue**:用于实现队列的数据结构,通常用于处理先进先出(FIFO)的操作。常见的实现类有 `LinkedList` 和 `PriorityQueue`。 ### 示例 以下是一些常见的单列集合示例: #### List 集合示例 ```java import java.util.ArrayList; import java.util.List; public class ListExample { public static void main(String[] args) { // 创建一个ArrayList List<String> list = new ArrayList<>(); // 添加元素 list.add("Apple"); list.add("Banana"); list.add("Orange"); // 遍历List集合 for (String fruit : list) { System.out.println(fruit); } } } ``` #### Set 集合示例 ```java import java.util.HashSet; import java.util.Set; public class SetExample { public static void main(String[] args) { // 创建一个HashSet Set<String> set = new HashSet<>(); // 添加元素 set.add("Apple"); set.add("Banana"); set.add("Orange"); // 遍历Set集合 for (String fruit : set) { System.out.println(fruit); } } } ``` #### Queue 集合示例 ```java import java.util.LinkedList; import java.util.Queue; public class QueueExample { public static void main(String[] args) { // 创建一个LinkedList作为Queue Queue<String> queue = new LinkedList<>(); // 添加元素 queue.offer("Apple"); queue.offer("Banana"); queue.offer("Orange"); // 遍历Queue集合并移除元素 while (!queue.isEmpty()) { System.out.println(queue.poll()); } } } ``` ### 遍历方式 单列集合可以通过多种方式进行遍历: - **迭代器遍历**:使用 `Iterator` 接口进行遍历。 - **增强 for 循环**:使用 Java 的增强 for 循环进行遍历。 - **Lambda 表达式**:使用 Lambda 表达式进行遍历。 #### 迭代器遍历示例 ```java import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class IteratorExample { public static void main(String[] args) { Collection<String> collection = new ArrayList<>(); collection.add("Apple"); collection.add("Banana"); collection.add("Orange"); // 使用迭代器遍历集合 Iterator<String> iterator = collection.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } } } ``` #### 增强 for 循环遍历示例 ```java import java.util.ArrayList; import java.util.Collection; public class EnhancedForLoopExample { public static void main(String[] args) { Collection<String> collection = new ArrayList<>(); collection.add("Apple"); collection.add("Banana"); collection.add("Orange"); // 使用增强for循环遍历集合 for (String fruit : collection) { System.out.println(fruit); } } } ``` #### Lambda 表达式遍历示例 ```java import java.util.ArrayList; import java.util.Collection; public class LambdaExample { public static void main(String[] args) { Collection<String> collection = new ArrayList<>(); collection.add("Apple"); collection.add("Banana"); collection.add("Orange"); // 使用Lambda表达式遍历集合 collection.forEach(fruit -> System.out.println(fruit)); } } ``` ### 总结 单列集合是 Java 集合框架中的重要组成部分,提供了灵活的方式来存储和操作一组对象。通过 `Collection` 接口及其子接口(如 `List`、`Set` 和 `Queue`),开发者可以根据具体需求选择合适的集合类型和实现类 [^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值