Java 集合框架之 List 全面解析(从概念到实践)

List 概念与继承关系

List 是 Java 集合框架中的接口,继承自 CollectionIterable,定义线性表的核心特性:元素有序、允许重复、支持按位置操作。

继承关系图示

Collection 接口核心方法

以下为 Collection 中需重点掌握的方法:

方法 功能说明 示例场景
int size() 返回集合元素个数 判断列表是否为空
boolean add(E e) 添加元素 向列表尾部插入数据
boolean remove(Object o) 删除指定元素 移除特定值
boolean contains(Object o) 检查元素是否存在 验证是否包含某对象
void clear() 清空集合 重置列表

List 专属方法

List 扩展了基于下标的操作,核心方法分类如下:

增删改查方法

  • void add(int index, E e):在指定位置插入元素
  • E remove(int index):删除并返回指定位置的元素
  • E set(int index, E e):修改指定位置元素
  • E get(int index):获取指定位置元素

工具方法

  • List<E> subList(int from, int to):截取子列表(视图,与原列表数据联动)
  • int indexOf(Object o):返回元素首次出现的下标

注意事项

  • subList 返回的是原列表的视图,修改子列表会影响原列表。
  • remove 方法重载:remove(int index) 按位置删除,remove(Object o) 按值删除。

List 实现类与基础使用

List 需通过实现类实例化,常用实现类包括:

  • ArrayList:基于动态数组,适合随机访问。
  • LinkedList:基于双向链表,适合频繁增删。

实例化示例

java 复制代码
List<String> arrayList = new ArrayList<>();  // 数组实现
List<String> linkedList = new LinkedList<>(); // 链表实现

完整使用示例

java 复制代码
List<String> list = new ArrayList<>();
list.add("A");          // 尾部添加
list.add(1, "B");       // 指定位置插入
String item = list.get(0);  // 获取元素
list.set(0, "C");       // 修改元素
list.remove(1);         // 按位置删除
boolean exists = list.contains("A");  // 检查存在性

总结

  1. 接口特性 :List 是有序、可重复的线性表接口,继承自 Collection
  2. 核心操作:支持通过下标进行增删改查,提供子列表视图等工具方法。
  3. 实现类选择ArrayList 适合查询,LinkedList 适合频繁增删。

下期将深入分析 ArrayListLinkedList 的底层实现及性能差异。

相关推荐
高山上有一只小老虎3 小时前
输出单向链表中倒数第k个结点
java·数据结构·链表
失散133 小时前
分布式专题——22 Kafka集群工作机制详解
java·分布式·云原生·架构·kafka
咖啡Beans4 小时前
SseEmitter + WebClient + Flux实现SSE事件流推送
java·spring boot·flux
你三大爷4 小时前
Safepoint的秘密探寻
java·后端
带娃的IT创业者5 小时前
从零开始掌握 uv:新一代超快 Python 项目与包管理器(含 Windows 支持)
windows·python·uv
努力也学不会java5 小时前
【Java并发】揭秘Lock体系 -- condition等待通知机制
java·开发语言·人工智能·机器学习·juc·condition
我需要打球5 小时前
SpringMVC的执行流程
java·servlet
瑞士卷@5 小时前
JDBC进阶之连接池的配置(Druid与HikariCP)
java·开发语言·数据库
xiaopengbc6 小时前
泛型在Java集合框架中的应用有哪些?
java·开发语言·python