当前位置: 首页 > news >正文

java容器

一、List 接口实现类


1. ​ArrayList

特性:基于动态数组实现,支持快速随机访问(时间复杂度 O(1)),但插入/删除元素时需移动后续元素(时间复杂度 O(n))

一、核心方法分类

  1. 添加元素

    • add(E e):尾部追加元素,均摊时间复杂度O(1)
    • add(int index, E element):指定位置插入元素,需移动后续元素,时间复杂度O(n)
    • addAll(Collection<? extends E> c):批量追加元素,时间复杂度与元素数量成正比
  2. 删除元素

    • remove(int index):删除指定位置元素,需前移后续元素,时间复杂度O(n)
    • remove(Object o):删除首次匹配的元素,时间复杂度O(n)
    • removeRange(int fromIndex, int toIndex):删除指定范围元素(受保护方法)
  3. 修改元素

    • set(int index, E element):替换指定位置元素,时间复杂度O(1)
  4. 查询元素

    • get(int index):通过索引直接访问,时间复杂度O(1)
    • indexOf(Object o):查找元素首次出现位置,时间复杂度O(n)
    • contains(Object o):判断元素是否存在,时间复杂度O(n)
  5. 容量管理

    • ensureCapacity(int minCapacity):手动扩容,避免频繁自动扩容
    • trimToSize():将容量调整为当前元素数量,节省内存
  6. 集合操作

    • size():返回元素数量,时间复杂度O(1)
    • isEmpty():判断列表是否为空,时间复杂度O(1)
    • toArray():转换为数组,时间复杂度O(n)
    • 使用 Collections.sort() 方法

相关文章:

  • 微信公众号里面免费做网站昆明百度关键词优化
  • 写作网站都有哪些ppp营销策划方案范文1500
  • 网站页面设计规范网站seo排名免费咨询
  • 网站制作公司价格好的推广平台
  • 什么网站个人可以建设百度q3财报减亏170亿
  • 青岛做企业网站的公司网络销售的工作内容
  • 如何在不同的分辨率均能显示出清晰的字体?
  • 创作领域“<em >足</em><em>球</em><em>彩</em><em>票</em><em>计</em><em>划
  • 设计模式分类与定义(高软55)
  • xtuner微调大模型教程
  • SkyWalking+Springboot实战
  • 自定义C语言变量转换库
  • P1090合并果子(优先队列)
  • Vue3 其它API toRow和markRow
  • nacos 3.x Java SDK 使用详解
  • 【COMSOL】参数化建模以及通过MATLAB运行
  • qml中的Connections用法
  • Android Gradle 下载插件或依赖太慢
  • ansible主机清单文件以及ansible常用模块
  • 软考中级-软件设计师信息安全模块考点解析
  • docker 镜像下载的另一种方式
  • 简易指南“<em >快</em><em>3</em><em>倍</em><em>投</em><em>规</em><em>划
  • C++第13届蓝桥杯省b组习题笔记
  • 自动化工作流工具的综合对比与推荐
  • 自定义类型:结构体(1)
  • 在 Qt 创建项目时,Qt Quick Application (Compat) 和 Qt Quick Application