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

Java数据类型 Arrays VS ArraysList VS LikedList 解析

在学习Java过程中,在刷题时总是搞不清楚这三种数据结构的区别,打算写篇文章记录一下

 Arrays VS ArrayList

 ArrayList VS LinkedList

 总结 

Arrays VS ArrayList

ArraysArrayList
类型Java的基本数据类型Java集合框架中的一个类,实现了List接口
存储内容基本数据类型+对象引用对象引用
可变性数组长度创建后不可变长度可变
适用场景查询元素会比较快,直接通过索引访问添加或者删除元素,尤其是在末尾操作
提供方法操作有限, 排序,访问,修改方法更多,添加,删除,迭代等

ArrayList VS LinkedList

ArrayListLinkedList
实现方式基于动态数组实现基于双向链表实现
性能通过索引直接访问,随机访问更快基于链表实现,插入和删除会更快
扩容元素达到容量时需要扩容不需要扩容,通过增加节点增加新元素
使用场景频繁进行随机访问频繁进行插入和删除

总结 

  • Arrays 基本数据类型 数组大小不可变 提供方法有限
  • ArrayList 基于数组实现 增删慢 查询快 线程不安全
  • Vector 基于数组实现 增删慢 查询快 线程安全 频繁加锁 释放锁 读写效率低
  • LinkedList 基于双链表实现 增删快 查询慢 线程不安全

相关文章:

  • 从数据洪流到智能洞察:人工智能如何解锁大数据的价值?
  • C++与C的基本不同
  • 2025年最新︱ASPM态势感知平台介绍
  • react-native 踩坑
  • 【LInux进程六】命令行参数和环境变量
  • 外聘教师管理系统基于Spring BootSSM
  • 软考中级-数据库-5.3-Internet基础知识
  • Netty:java高性能网络编程的基石(下)
  • 【sql靶场】第18-22关-htpp头部注入保姆级教程
  • 一文梳理清楚Vsync/Choreographer/SurfaceFlinger/Surface/SurfaceHolder/硬件刷新频率关系
  • VSTO(C#)Excel开发 系列目录 含源码发布
  • ROS合集(二)源码构建 RTAB-Map + EuRoC
  • 【寻找Linux的奥秘】第二章:权限
  • 直线导轨对于加工环境有哪些要求?
  • 金属加工工种
  • 【Spring】第三弹:基于 XML 获取 Bean 对象
  • PSI5接口
  • Linux进程——(4)命令行参数、环境变量
  • linux 安全 xshell 使用
  • 使用 GitHub 可重用工作流和 GitHub Actions 简化 DevOps
  • 圆桌丨全球化博弈与人工智能背景下,企业如何落地合规体系
  • 陕西三原高新区违法占用土地,被自然资源局罚款10万元
  • 女子七年后才知银行卡被盗刷18万元,警方抓获其前男友
  • 媒体:“重病老人银行取款身亡”涉事家属称已和解,银行将支付十万
  • 李成钢出席中国与《数字经济伙伴关系协定》成员部级会议
  • 新华时评:让医德医风建设为健康中国护航