Java程序基础——List集合存储数据的

目录

1、数据存储的常用结构

2、ArrayList

3、LinkedList

4、Vector


1、数据存储的常用结构

数据存储的常用结构:堆栈、队列、数组、链表

1、堆栈:先进后出(FIFO)

  • 压栈:存元素,把元素存储到栈的顶端位置,栈中已有元素依次向栈底方向移动一个位置
  • 弹栈:取元素,把栈顶位置的元素取出,栈中已有元素依次向栈顶方向移动一个位置
  • 栈的入口、出口都是栈的顶端位置

2、队列:先进先出(FIFO)

  • 队列的入口和出口各占一侧

3、数组

  • 查找元素快:通过索引可以快速访问指定位置的元素。
  • 增删元素慢:
  1. 指定索引位置增加元素:需要创建一个新数组,将指定新元素存储在索引位置,再把元素组元素根据索引,复制到对应的位置。
  2. 指定索引位置删除元素:需要创建一个新数组,把原数组元素根据索引,复制到新数组对应索引位置,原数组中指定索引位置元素不复制到新数组中。

4、链表

  • 多个节点之间,通过地址进行连接,节点由两部分组成(数据域+指针域)
  • 查找元素慢:想要查找某个元素,需要通过连接的节点依次向后查找元素。
  • 增删元素快:只需要修改连接下一个元素的地址即可。

2、ArrayList

ArrayList数据存储采用的是数组结构。元素增删慢、查找快


3、LinkedList

LinkedList数据存储采用的是链表结构。元素增删快、查找慢

常用方法:

  • addFirst(E e)   将指定元素插入此列表的开头
  • addLast(E e)   将指定元素添加到此列表的结尾
  • getFirst()      返回此列表的第一个元素
  • getLast()      返回此列表的最后一个元素
  • removeFirst()    移除并返回此列表的第一个元素
  • removeLast()    移除并返回此列表的最后一个元素
  • pop()   从此列表所表示的堆栈处弹出一个元素
  • push(E e)   将元素推入此列表所表示的堆栈

在开发中,LinkedList也可以作为堆栈、队列的结构使用。


4、Vector

Vector数据存储结构是数组结构,被ArrayList替代

    public static void main(String[] args) {
        Vector vector = new Vector<>();
        vector.addElement("a");
        vector.addElement("b");
        Enumeration elements = vector.elements();
        while (elements.hasMoreElements()){
            String s = elements.nextElement();
            System.out.println(s);
        }
    }

你可能感兴趣的:(Java,Java,List,数据存储结构)