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要低,插入和删除数据效率高
相关推荐
心之语歌8 分钟前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊1 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang1 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang3 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解3 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing7 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean7 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven978 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java
皮皮林55118 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河18 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化