• Java学习:List接口


    List接口

    java.util.list接口 extends Collection接口

    List接口的特点:

    1. 有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出123)
    2. 有索引,包含了一些带索引的方法
    3. 允许存储重复的元素

    List接口中带索引的方法(特有):

    public void add(int index,E element):将指定的元素,添加到该集合中的指定位置上。
    public E get(int index):返回集合中指定位置的元素。
    public E remove(int index):移除列表中指定位置的元素,返回的是被移除的元素。
    public E set(int index,E element):用指定元素替换集合中指定位置的元素,返回值的更新前的元素。

    注意:
    操作索引的时候,一定要防止索引越界异常

    • IndexOutOfBoundsException:索引越界异常,集合会报
    • ArrayIndexOutOfBoundsException:数组索引越界异常
    • StringIndexOutOfBoundsException:字符串索引越界异常
    //创建一个List集合对象,多态
        List<String> list = new ArrayList<>();
        {
            //public void add(int index,E element):将指定的元素,添加到该集合中的指定位置上。
            //在索引2和索引3之间添加一个cainiao
            list.add(3,"cainiao");//{a,b,c,d}-->{a,b,c,cainiao,d}
            //移除元素
            String removeE = list.remove(2)
            //替换元素
            String setE = list.set(4,"A");
            }

    List的子类

    • ArrayList集合

    java.util.ArrayList集合数据存储的结构是数组结构元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。

    • LinkedList集合

    java.util.LinkedList集合数据存储的结构是链结构。方便元素添加,删除的集合。

    java.util.LinkedList集合 implements List接口

    ArrayList集合的特点:

    1. 底层是一个链的结构:查询慢,增删快
    2. 里边包含了大量操作首尾元素的方法

    注意:
    使用ArrayList集合特有的方法,不能使用多态

    • public void addFirst(E e):将指定元素插入此列表的开头
    • public void addLast(E e):将指定元素添加到此列表的结尾
    • public void addpush(E e):将元素推如此列表所表示的推栈
    • public E getFirst():返回此列表的第一个元素。
    • public E getLast():返回此列表的最后一个元素。
    • public E removeFirst():移除并返回此列表的第一个元素。
    • public E removeLast():移除并返回此列表的最后一个元素。
    • public E pop():从此列表所表示的推栈处弹出一个元素。相当于removeFirst
    • public boolean isEmpty():如果列表不包含元素,则返回true

    Vector集合

    Vector 类可以实现可增长的对象数组。
    与新collection不同,Vector是同步的。

  • 相关阅读:
    再谈HTTP通信
    【ZOJ】[1586]QS Network
    【ZOJ】[1586]QS Network
    【POJ】[2421]Constructing Roads
    【POJ】[2421]Constructing Roads
    【POJ】[2031]Building a Space Station
    【POJ】[2031]Building a Space Station
    【POJ】[1287]Networking
    【POJ】[1287]Networking
    【杭电】[1875]畅通工程再续
  • 原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/11223151.html
Copyright © 2020-2023  润新知