关于LIst集合

前言:

第一次写博客,有些东西可能总结的到位,发表一下自己的一些观点,欢迎大佬们点评和指教

正文:

list集合可以分为ArrayLlst和LinkedList。

ArrayList

ArrayList在集合中常被用作于查询和修改,而不用于新增和删除。这是因为Arraylist的底层是数组,每一次新增或者删除都需要创建一个新数组,该新数组长度为原数组长度大- -或者小一,运行效率很慢,而且假如你要复制100次,那么将会浪费很多内存空间,但是数组在于查询和修改就很方便,数组的好处就是他会有一个下标,可以根据他的下标去很快的找到

LinkedList

LinkedLlist则和ArrayList相反,他被用作于删除和新增,而不用于去查询和修改,因为LinkedL ist的底层是链表,(由于第一 -次写也不知道怎么画图只好将就- -下)大概可以理解成一串手链吧由那种一颗颗的珠子串成,第一颗串进去的就是一个头头,一颗颗的连接在一起,前一个的头指向后一个的尾,但是如果他其中有一颗珠子坏了就可以把绳子断开把坏的扔掉再把线连起来就可以了,这就是删除,新增也一样,把你要新增的珠子放到你要放的地方,把绳子打开放进去。但是如果要查询和修改的话就比较麻烦了,他需要去找到那个,但是你要找到那个就需要找到他的前一个,以此类推,就需要从第一个开始也就是所说的开始找就会很慢,查询也是一样

总结

ArrayList集合增删慢效率低浪费内存但是查改快

    LinkedList集合查改慢效率低但是增删快

list集合的一些小见解的更多相关文章

  1. 关于FPGA的一些小见解

    Xilinx FPGA配置bit流文件 Xilinx FPGA的供电是采用USB作为电源,使用Verilog HDL或VHDL实现的逻辑电路通过Xilinx的综合工具生成bit流文件,通过Digile ...

  2. Java集合,扑克牌的小项目练习

    Java集合,扑克牌的小项目练习 2小时学完了类与集合,一直二倍加跳过,集合和类的学习我觉得得多实践中去记住,光靠背,永远也背不完,学的时候记一下常用的,特殊的就行了,用的时候再查,多写代码才能会,哈 ...

  3. React,关于redux的一点小见解

    最近项目做多页面应用使用到了,react + webpack + redux + antd去构建多页面的应用,本地开发用express去模拟服务端程序(个人觉得可以换成dva).所以在这里吐槽一下我自 ...

  4. 有关Set集合的一个小问题

    先看两段代码: Demo1: Set<Short>s=new HashSet<>(); for(Short i=0;i<100;i++){ s.add(i); s.rem ...

  5. 初学划分树,小见解之!POJ-2104/HDU-2665

    划分树 本来是学主席树的,可怜我等巨弱观群巨博客难解fotle主席的思想精髓.于是学了一下划分树,嗯,花了一下午时间理解build(其实自己模拟一遍就通了),我很难理解为什么划分树会看不懂而能学会主席 ...

  6. WCF--安全小见解...

    由于WCF写的服务需要Ajax来进行调用(这个配置过程也是一个比较咕~~(╯﹏╰)b的经历...), 所以调用的过程都是前台可以看到的,不加点安全措施上去,真的像是一个裸奔在互联网上的接口... 反正 ...

  7. android 内存溢出oom错误的一些小见解

    转:http://blog.csdn.net/xuhui_7810/article/details/9493681 我们在代码里调用setBackgroundResource(int resid)来设 ...

  8. 关于MySQL索引的一点小见解

    索引: 优缺点: 1.用的合理可以提高查询效率 2.建立过多索引会占用物理和数据空间,同时也会降低插入和更新效率 需不需要建立索引: 1.一般表的数据低于2000条就不用建立索引了,超过2000条酌情 ...

  9. JAVA大集合数据分批次进行切割处理

    今天遇到一个大集合里面的数据删除问题, 因为是一个大集合,如果同时传递到数据库,那么就会造成数据库压力 所以分批次的进行批量操作 其实 也可以采用多线程来处理或者多批次加多线程来处理都是可以的 下面的 ...

随机推荐

  1. C# 得到本周的第一天和最后一天

    1.得到本周的第一天和最后一天 /// <summary> /// 得到本周第一天(以星期一为第一天) /// </summary> /// <param name=&q ...

  2. 自定义错误throw

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. IDEA jetbrain Live Template

    IDEA(jetbrain通用)优雅级使用教程 IDEA 强大的 Live Templates(转) 官网

  4. JQuery 实践---创建元素包装集

    1. 利用选择器,选择将被JQuery包装的元素 标识和选择DOM元素.JQuery采用我们已经知道的CSS语法并且扩展了一些.为了利用JQuery来选择元素,请把选择器包装在$()中. 基本CSS选 ...

  5. MySQL GROUP BY 语句

    GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...

  6. React事件处理和原生JS事件处理

    1.原生JS 事件触发调用有三种方式: 1. on[event]事件属性,手动触发  ❗️on[event]事件是Window对象上的方法. 2. on[event]事件属性,通过htmlElemen ...

  7. web文件夹上传

    需求:项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在500M内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以501M来进行限制. 第一步: 前端修改 由于项目使用的是 ...

  8. [CQOI2016]手机号码 数位DP

    [CQOI2016]手机号码 用来数位DP入门,数位DP把当前是否需要限制取数范围(是否正在贴着临界值跑,即下面的limited)和一切需要满足的条件全部塞进记忆化搜索参数里面就好了,具体情况转移便好 ...

  9. mysql 进程

    --------------------查看mysql所有进程-----------show full processlist -------------------查看mysql 账号权限----- ...

  10. 1-4CMYK色彩模式

    http://www.missyuan.com/thread-350717-1-1.html CMYK也称作印刷色彩模式,顾名思义就是用来印刷的. 只要是在印刷品上看到的图像,就是CMYK模式表现的 ...