ArrayList和LinkedList的区别是什么?

ArrayList和LinkedList都是Java中的集合框架,它们都实现了List接口,但它们的内部实现不同。ArrayList是通过数组实现的,而LinkedList是通过链表实现的。

主要的区别在于它们对于插入和删除操作的效率不同。在ArrayList中,如果需要插入或删除一个元素,需要移动后续的元素,因为ArrayList中的元素是连续存储的。而在LinkedList中,插入或删除一个元素只需要改变前后元素的指针,不需要移动其他元素。

接下来我们看一下ArrayList示例代码:

import java.util.ArrayList;public class ArrayListDemo {    public static void main(String[] args) {        ArrayList<String> arrayList = new ArrayList<>();        // 添加元素        arrayList.add("A");        arrayList.add("B");        arrayList.add("C");        arrayList.add("D");        // 在指定位置插入元素        arrayList.add(2, "E");        // 删除元素        arrayList.remove("B");        // 遍历元素        for (String str : arrayList) {            System.out.print(str + " ");        }    }}

LinkedList示例代码:

import java.util.LinkedList;public class LinkedListDemo {    public static void main(String[] args) {        LinkedList<String> linkedList = new LinkedList<>();        // 添加元素        linkedList.add("A");        linkedList.add("B");        linkedList.add("C");        linkedList.add("D");        // 在指定位置插入元素        linkedList.add(2, "E");        // 删除元素        linkedList.remove("B");        // 遍历元素        for (String str : linkedList) {            System.out.print(str + " ");        }    }}

这两个示例代码都展示了对于集合的添加、插入、删除和遍历操作,但它们的内部实现方式不同,所以它们的执行效率也会有所不同。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/261713.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
黑马程序员黑马程序员订阅用户
上一篇 2023年4月26日 23:15
下一篇 2023年4月26日 23:15

相关推荐

  • 今日荐书:《怒》

    吉田修一著。东京郊区发生一起灭门凶杀案,凶手在墙上留下“怒”字后离去。此后,在港口小城滨崎、东京市区及冲绳的波留间岛,分别出现了三个疑似凶手的陌生人,给他们身边的人带来一场信任危机。“无法完全相信重要的…

    2016年8月17日
    0237
  • JavaScript中常用事件有哪些?

    JavaScript是基于对象的脚本语言,它的一个最基本的特征就是采用事件鼎动。如,当鼠标指针经过某个按钮或者用户在文本框中输入某些信息时,都可以设置相应的JavaScript事件来完成某些特殊效果。下面,将对JavaScrip…

    2023年4月26日
    016
  • ECharts有哪些优点?ECharts怎么使用?

    ECharts的优点ECharts是百度公司开源的一个使用 JavaScript 实现的开源可视化库,兼容性强,底层依赖矢量图形库 ZRender ,提供直观,交互丰富,可高度个性化定制的数据可视化图表。1.开源免费它是开源免费的,也就…

    2023年5月14日
    013
  • 今日荐书:《水果:一部图文史》

    水果演化的历程就像一个迷宫游戏,复杂而有趣。英国皇家园艺学会的裁判员和园艺所高级会员彼得·布莱克本-梅兹是一名在水果历史和栽培方面首屈一指的专家,在这本书中介绍了多种水果的有趣历史。苹果是如何从一个生…

    2017年12月13日
    0288
  • 今日荐书:《你就这样失去了她》

    朱诺·迪亚斯著。和首部长篇小说《奥斯卡·瓦奥短暂而奇妙的一生》一样,朱诺·迪亚斯这部短片小说集仍然以多米尼克裔青年为主角。尤尼奥是任性的,他爱上一位又一位姑娘,然后出轨、被女朋友发现——吸引,背叛,互相伤…

    2016年6月13日
    0481
  • 今日荐书:《种地书》

    蔡珠儿著。台湾作家蔡珠儿移居香港离岛期间所写的随笔,以节气为序,写出了垦荒的艰辛和收获的喜悦。在她笔下,蔬菜瓜果都有了灵性。除了写自己种菜的事,还收录了作者在世界各地的旅行见闻,如何采购当地食材,融…

    2016年5月26日
    0307
  • 宝塔面板的善与恶:宝塔国内版收集用户服务器隐私数据

    图/文:迷神国内的某些公司做着做着就喜欢动些歪脑筋,手脚总是不那么干净,居心不可谓不险恶。几天前各大论坛贴满了关于宝塔后门搜集隐私信息的帖子,网友附上了详细的宝塔搜集信息并上传到服务器的代码和操作流程…

    2022年5月17日 默认文章
    02.9K
  • Excel表格中的特殊字符怎么输入?

    一、直接插入符号 我们以输入符号“Φ”为例,来看一下具体的操作过程。 切换到“插入”菜单选项卡中的“符号”按钮,打开“符号”对话框,然后在“字体”栏选择“(普通文本)”,如下图所示。 单击“字集”右侧的下拉按钮,在随…

    2019年3月15日 默认文章
    0688

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息