Java中List的使用场景

本文介绍了Java中List集合的特点,包括允许元素重复、线性存储和保持元素插入顺序。详细讲解了ArrayList和LinkedList两个实现类,ArrayList适用于查询和遍历数据,增删较慢;LinkedList适合频繁增删操作,查找速度慢。并提到了List接口中的线性表、顺序表和链表概念。
摘要由CSDN通过智能技术生成

List使用场景

特点:

①在 List集合中允许出现 重复元素 《通过元素的equals方法,来比较是否为重复的元素。》
②所有元素是以一种 线性方式进行存储
③List集合还有一个特点就是元素有序即元素的存入顺序和取出顺序一致。

API介绍:

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

⑴ ArrayList集合

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

特点:查询数据、遍历数据
①增删慢 查找快

⑵ LinkedList集合

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

特点:方便元素添加、删除的集合
①增删快,查找慢

常见方法

List(线性表)

在这里插入图片描述

ArrayList(顺序表)

在这里插入图片描述

LinkedList(链表)在这里插入图片描述

代码演示

import java.util.LinkedList;
import java.util.List;
import java.util.ArrayList;


public class ListDemo {
    public static void main(String[] args) {
        List<String> courses=new ArrayList<>();
        courses.add("a");
        courses.add("b");
        courses.add("c");
        courses.add("d");
        //和数组一样允许添加重复元素
        courses.add("a");
        //按照添加顺序打印
        System.out.println(courses);
        //类似数组下标的访问方式
        System.out.println(courses.get(1));
        System.out.println(courses);
        //截取(左闭右开)
        List<String> subCourses=courses.subList(1,3);
        System.out.println(subCourses);
        //更改0号下标的数
        courses.set(0,"f");
        System.out.println(courses);
        //重新构造
        List<String> courses2 = new ArrayList<>(courses);
        System.out.println(courses2);

        List<String> courses3 = new LinkedList<>(courses);
        System.out.println(courses3);
    }
}

运行结果

[a, b, c, d, a]
b
[a, b, c, d, a]
[b, c]
[f, b, c, d, a]
[f, b, c, d, a]
[f, b, c, d, a]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值