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 的底层实现及性能差异。

相关推荐
怒放吧德德1 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆3 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌5 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊6 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang6 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang8 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解8 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
阿白的白日梦11 小时前
winget基础管理---更新/修改源为国内源
windows
SimonKing12 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean12 小时前
Jackson View Extension Spring Boot Starter
java·后端