zoukankan      html  css  js  c++  java
  • ArrayList集合详解

    ArrayList 实现了List的接口,是长度可变的数组,空间是连续的

    api默认提供了很多操作ArrayLis的方法,这些方法可以去api里面查询使用

    一、这么多方法怎么学?
    1.熟练使用常见的方法
    2.了解大概还有哪些方法
    3.需要用的时候,就查api文档

    二、常见的集合有
    ArrayList LinkedList ( vector ) HashSet () HashMap (HashTable)

    三、arraylist常见方法
    (1)size()元素个数
    (2)add() 向数组中添加元素
    (3)Object : get() 获取集合中指定位置的元素


    四、其中LinkedList : 用法跟ArrayList是一样的

    1.LinkedList和ArrayLis相同点
    (1).都实现了list接口
    (2).常用方法基本一样

    2.不同点:
    (1).底层结构不一样
    ArrayList是空间是连续的,LinkedList空间是不连续的,用的是链表。

    什么时候用LinkedList?,什么时候用ArrayList?
    查询和修改次数相对比较多的是用ArrayList。
    删除和新增比较多的时候用LinkedList。

    五、ArrayList;查询和修改效率高,删除和新增效率低
    原因:查询和修改效率高得原因空间连续的,删除和新增效率低因为涉及到了元素的移动(多了个元素移动的时间)
    LinkedList;查询和修改效率低,删除和新增效率高
    原因:查询和修改效率低的原因(多了个寻址时间)

    计算机中要么空间换时间,要么时间换空间,不可能两全其美。

    ArrayList:
    add(0,Object); 在集合的第0个位置插入
    add() 在集合的最后一个位置插入
    get(0) 获取第1个元素
    get(list.size()-1) 获取最后一个个元素

    LinkedList: 
    addFirst() 在集合的第0个位置插入
    addFirst() 在集合的最后一个位置插入
    getFirst() 获取第1个元素
    getLast() 获取最后一个个元素

    List是干啥的?
    临时存储数据,操作数据(冒充数据库的)

  • 相关阅读:
    二月12日
    十日冲刺
    十日冲刺
    十日冲刺
    十日冲刺
    十日冲刺
    十日冲刺
    十日冲刺
    一周进度条博客
    十天冲刺
  • 原文地址:https://www.cnblogs.com/saomoumou/p/11348909.html
Copyright © 2011-2022 走看看