栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

List集合(ArrayList、LinkedList、Vector)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

List集合(ArrayList、LinkedList、Vector)

目录

1、List集合 

1.1、什么是List集合?

 1.1、List集合的特点

1.2、List集合常用方法

 1.3、代码演示

 2、ArrayList集合

2.1、ArrayList集合常用方法

 2.2、代码演示

3、LinkedList集合

3.1、LinkedList的特点

 3.2、LinkedList常用方法

3.3、代码演示

4、Vector集合

4.1、Vector集合特点

4.2、代码演示 

5、List集合子类特点总结


 

1、List集合 

1.1、什么是List集合?

java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象称为List集合。在List集合中允许出现重复的元素,所有的元素是以一种线性方式进行存储的,在程序中可以通过索引来访问集合中的指定元素。另外,List集合还有一个特点就是元素有序,即元素的存入顺序和取出顺序一致。

 1.1、List集合的特点

1、它是一个元素存取有序的集合。

2、它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)。

3、集合中可以有重复的元素。

1.2、List集合常用方法

List作为Collection集合的子接口,不但继承了Collection接口中的全部方法,而且还增加了一些根据元素索引来操作集合的特有方法。

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

 1.3、代码演示
public class ListDemo {
    public static void main(String[] args) {
        List list=new ArrayList<>();
        //添加元素
        list.add("hello");
        list.add("world");
        list.add("java");
        System.out.println(list);
        //删除指定索引元素或者删除指定元素
        list.remove("world");
        list.remove(0);
        System.out.println(list);
        //获取集合的元素个数
        int size = list.size();
        System.out.println(size);
        //查看集合中是否包含指定元素
        boolean hello = list.contains("hello");
        System.out.println(hello);

        //list集合获取指定索引的元素
        String s = list.get(0);
        System.out.println(s);
        System.out.println("-------------------");
        //list集合遍历
        Iterator iterator = list.iterator();
        while(iterator.hasNext()){
            String next = iterator.next();
            System.out.println(next);
        }
        System.out.println("-------------------");
        //普通for遍历
        for (int i = 0; i  

 2、ArrayList集合

2.1、ArrayList集合特点

底层数据结构是数组,查询快,增删慢 线程不安全,效率高。

2.1、ArrayList集合常用方法
方法名说明
public void add(int index, E element)将指定的元素,添加到该集合中的指定位置上。
public E get(int index)返回集合中指定位置的元素。
public E remove(int index)移除列表中指定位置的元素, 返回的是被移除的元素。
public E set(int index, E element)用指定元素替换集合中指定位置的元素,返回值的更新前的元素。
public boolean add(E e)将指定的元素添加到此列表的尾部。

 2.2、代码演示
public class ArrayListDemo {
    public static void main(String[] args) {
        ArrayList arrayList=new ArrayList<>();
        //添加元素
        arrayList.add("hello");
        arrayList.add("world");
        //在指定索引添加元素替换原有的元素
        arrayList.add(0,"rose");
        //指定索引,在此索引处进行设置值
        arrayList.set(1,"java");
        System.out.println(arrayList);
        //获取指定索引的元素
        String s = arrayList.get(1);
        System.out.println(s);
        //删除指定索引的元素
        String remove = arrayList.remove(1);
        System.out.println(remove);
        System.out.println(arrayList);
    }
}

3、LinkedList集合

3.1、LinkedList的特点

1、底层数据结构是链表,查询慢,增删快
2、线程不安全,效率高

 3.2、LinkedList常用方法
方法名说明
public void addFirst(E e)将指定元素插入此列表的开头。
public void addLast(E e)将指定元素添加到此列表的结尾。
public E getFirst()返回此列表的第一个元素。
public E getLast()返回此列表的最后一个元素。
public E removeFirst()移除并返回此列表的第一个元素。
public E removeLast()移除并返回此列表的最后一个元素。
public E pop()从此列表所表示的堆栈处弹出一个元素。
public void push(E e)将元素推入此列表所表示的堆栈。
public boolean isEmpty()如果列表不包含元素,则返回true。

LinkedList是List的子类,List中的方法LinkedList都是可以使用,我们只需要了解LinkedList的特有方法即可。在开发时,LinkedList集合也可以作为堆栈,队列的结构使用。

3.3、代码演示
public class LinkedListDemo {
    public static void main(String[] args) {
        LinkedList linkedList=new LinkedList<>();
        //添加元素
        linkedList.add("hello");
        linkedList.add("world");
        linkedList.add("java");
        //添加头部元素
        linkedList.addFirst("head");
        //添加尾部元素
        linkedList.addLast("last");
        System.out.println(linkedList);
        System.out.println("-------------------");
        //获取头部元素
        String first = linkedList.getFirst();
        System.out.println(first);
        //获取尾部元素
        String last = linkedList.getLast();
        System.out.println(last);
        System.out.println("-------------------");
        //删除头部元素并返回该元素值
        String s = linkedList.removeFirst();
        //删除尾部元素并返回该元素值
        String s1 = linkedList.removeLast();
        System.out.println(s);
        System.out.println(s1);
        System.out.println(linkedList);
        System.out.println("-------------------");
        //循环集合 如果不为空就弹出一个元素
        while(!linkedList.isEmpty()){
            linkedList.pop();
        }
        System.out.println(linkedList);
    }
}

4、Vector集合

4.1、Vector集合特点

1、底层数据结构是数组,查询快,增删慢。
2、线程安全,效率低。

4.2、代码演示 
public class VectorDemo {
    public static void main(String[] args) {
        Vector vector=new Vector<>();
        vector.addElement("hello");
        vector.addElement("world");
        vector.addElement("java");

        //集合遍历
        for (int i = 0; i  elements = vector.elements();
        while(elements.hasMoreElements()){
            String s = elements.nextElement();
            System.out.println(s);
        }
        System.out.println("--------------------");
        //增强for遍历
        for (String s : vector) {
            System.out.println(s);
        }
    }
}

5、List集合子类特点总结

    1、ArrayList:
               底层数据结构是数组,查询快,增删慢。
               线程不安全,效率高。
    2、LinkedList:
               底层数据结构是链表,查询慢,增删快。
               线程不安全,效率高。
    3、Vector:
               底层数据结构是数组,查询快,增删慢。
               线程安全,效率低。
    4、List集合特点:有序可重复。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1024130.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号