Java之List常见用法

Java之List常见用法

基础

java 复制代码
    @Test
    public void testList() {
//        1.增 add(Object obj)
        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);
//        2.删 remove(int index) 注:括号里面是索引(想要删除某个特定数据,就得传对象数据进去,像int等基本数据类型的需要转一下包装类型)
        list.remove(1);
//        3.改 set(int index, int value)
        list.set(0, 0);
//        4.查 get(int index)
        System.out.println(list.get(0)); // 0
//        5.插 add(int index, int value)
        list.add(1, 4); // 1, 4, 2, 3
//        6.长度
        System.out.println(list.size()); // 4
//        7.遍历 常用for循环,当然也可以用迭代器等
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }

ArrayList:List的主要实现类,线程不安全,效率高,底层使用Object[]数组实现,每次扩一定长度

  • 在添加\查找数据时效率高,插入和删除数据效率底

Vector:List的实现类之一,线程安全但是效率低,底层同样使用Object[]数组实现,

LinkedList:底层使用双向链表方式存储(数据结构课学的),频繁的对数据进行插入\删除操作时使用

  • 在添加\查找数据时效率比ArrayList要低,插入和删除数据效率高
相关推荐
DICOM医学影像3 分钟前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
Data_agent14 分钟前
Python 编程实战:函数与模块化编程及内置模块探索
开发语言·python
new_zhou14 分钟前
vs2019+qt工程中生成dump文件及调试
开发语言·qt·visual studio·dump调试
栈与堆38 分钟前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
一路向北·重庆分伦40 分钟前
03-01:MQ常见问题梳理
java·开发语言
一 乐42 分钟前
绿色农产品销售|基于springboot + vue绿色农产品销售系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·宠物
txinyu的博客1 小时前
结合游戏场景理解,互斥锁,读写锁,自旋锁,CAS / 原子变量,分段锁
开发语言·c++·游戏
lhrimperial1 小时前
企业智能知识库助手落地实践:从RAG到Multi-Agent
java·spring cloud·微服务·系统架构·知识图谱
3***68841 小时前
Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
java·spring boot·后端
阿里嘎多学长1 小时前
2026-01-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管