java的ArrayList && LinkedList的操作

文章目录

  • ArrayList
    • [1. ArrayList集合的特点](#1. ArrayList集合的特点)
    • [2. 操作](#2. 操作)
  • LinkedList
    • [1. LinkedList集合的特点](#1. LinkedList集合的特点)
    • [2. 操作](#2. 操作)
  • 参考链接

ArrayList

1. ArrayList集合的特点

2. 操作

  1. add(Object element) 向列表的尾部添加指定的元素。
  2. size() 返回列表中的元素个数。
  3. get(int index) 返回列表中指定位置的元素,index从0开始。
  4. add(int index, Object element) 在列表的指定位置(从0开始)插入指定元素
  5. set(int i, Object element) 使用元素element替换索引i位置的元素,并返回被替换的元素。
  6. clear() 从列表中移除所有元素。
  7. isEmpty() 判断列表是否包含元素,不包含元素则返回 true,否则返回false。
  8. contains(Object o) 如果列表包含指定的元素,则返回 true。
  9. remove(int index) 移除列表中指定位置的元素,并返回被删元素,删除位置后面的元素(如果有)向前移动。
  10. remove(Object o) 从List集合中移除第一次出现的指定元素,移除成功返回true,否则返回false。当且仅当List集合中含有满(o==null ? get(i)==null : o.equals(get(i)))条件的最低索引i的元素时才会返回true。
  11. iterator() 返回按适当顺序在列表的元素上进行迭代的迭代器。
  12. for循环遍历List集合:
  13. 加强for循环遍历List集合:
java 复制代码
import java.util.ArrayList;
import java.util.Iterator;


public class Test4 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<String>();
        // 添加
        list.add("王者");
        list.add("荣耀");
        System.out.println(list);
        System.out.println(list.size());
        System.out.println(list.get(1));
        // 插入
        list.add(1,"吃鸡");
        System.out.println(list);
        // 替换
        list.set(1,"金蝉子");
        System.out.println(list);
        // 清空
        list.clear();
        System.out.println(list.isEmpty());
        System.out.println(list);
        list.add("王者");
        list.add("荣耀");
        list.add("金蝉子");
        // 是否包含
        System.out.println(list.contains("王者"));
        // 删除并返回被删元素
        System.out.println(list.remove(2));
        System.out.println(list);
        System.out.println(list.remove("王者"));
        System.out.println(list);
        list.add("王者");
        list.add("金蝉子");
        // 迭代
        Iterator<String> ite = list.iterator();
        while(ite.hasNext()){
            System.out.println(ite.next());
        }
        // 遍历
        System.out.println("--------");
        for(int i = 0; i < list.size(); i++){
            System.out.println(list.get(i));
        }
        System.out.println("----");
        for(String name:list){
            System.out.println(name);
        }
    }
}

输出结果:

复制代码
[王者, 荣耀]
2
荣耀
[王者, 吃鸡, 荣耀]
[王者, 金蝉子, 荣耀]
true
[]
true
金蝉子
[王者, 荣耀]
true
[荣耀]
荣耀
王者
金蝉子
--------
荣耀
王者
金蝉子
----
荣耀
王者
金蝉子

LinkedList

1. LinkedList集合的特点

2. 操作

  1. 添加
    boolean add(Object element) 它将元素附加到列表的末尾。
    boolean add(int index,Object element) 指定位置插入。
    void addFirst(E element) 元素附加到列表的头部
    void addLast(E element) 元素附加到列表的尾部
  2. 取数据
    Object get(int index) 根据下标获取数据
    Object getFirst() 它返回链表的第一个元素。
    Object getLast() 它返回链接列表的最后一个元素。
  3. 查询
    boolean contains(Object element)如果元素存在于列表中,则返回true。
  4. 修改
    Object set(int index,Object element)它用于用新元素替换列表中的现有元素
  5. 删除
    E remove() 删除第一个元素
    E remove(int location) 删除指定位置的元素
    E removeFirst() 删除并返回链接列表的头部一个元素
    E removeLast() 删除并返回链接列表的尾部一个元素
  6. 清空
    void clear():它删除列表中的所有元素。
  7. 链表长度
    int size():返回长度
java 复制代码
import java.util.LinkedList;

public class Test3 {
    public static void main(String[] args) {
        LinkedList<Integer> linkedList = new LinkedList<>();
        linkedList.add(1);
        linkedList.add(2);
        linkedList.add(3);
        linkedList.add(4);
        linkedList.addFirst(5);
        linkedList.addFirst(6);
        linkedList.addLast(7);
        linkedList.addLast(8);
        // 插入
        linkedList.add(2, 9);
        System.out.println(linkedList);
        // 根据下标获取数据
        System.out.println(linkedList.get(2));
        // 第一个
        System.out.println(linkedList.getFirst());
        // 最后一个
        System.out.println(linkedList.getLast());
        System.out.println(linkedList.contains(1));
        System.out.println(linkedList.contains(10));
        // 替换
        linkedList.set(0, 10);
        System.out.println(linkedList);
        // 删除第一个
        linkedList.remove();
        linkedList.remove(2);
        System.out.println(linkedList);
        // 长度
        System.out.println(linkedList.size());
        // 清空
        linkedList.clear();
        System.out.println(linkedList);
    }
}

输出结果:

复制代码
[6, 5, 9, 1, 2, 3, 4, 7, 8]
9
6
8
true
false
[10, 5, 9, 1, 2, 3, 4, 7, 8]
[5, 9, 2, 3, 4, 7, 8]
7
[]

参考链接

Arraylist的基本使用方法
【Java集合类】之 LinkedList(链表)
数据结构之链表(LinkedList详解)

相关推荐
weixin_460443567 小时前
2026年新修订《网络安全法》实施:Java私有化考试系统如何做好SBOM、漏洞治理与安全升级?
java·开发语言·在线考试系统·企业培训考试系统·宏远培训考试系统·国企培训考试系统·国产化培训系统
海鸥-w10 小时前
什么是AOP
java
Cc.Y11 小时前
Java零基础入门:可变字符串与包装类:StringBuilder、StringBuffer 与 通讯录管理系统实战
java·开发语言·python
paopaokaka_luck11 小时前
基于springboot+vue的智慧家政管理系统(AI问答、 WebSocket实时沟通、ECharts运营分析、订单规则与服务追踪)
java·javascript·spring boot·数据分析·echarts·mybatis
sm_9267870511 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
阿森_dev11 小时前
2027 届毕设选题怎么选:30 个 Java 方向选题的实现难度排序
java·开发语言·spring boot·毕业设计·课程设计
Sarvartha11 小时前
Lambda 表达式和函数式接口
java·开发语言
计算机毕业设计杰瑞11 小时前
【计算机毕设精品】基于SpringBoot的一体化教务与学业质量管理系统的设计与实现,附源码_增删改查_java项目_可完美运行部署_网站项目
java·spring boot·课程设计
colinu12 小时前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
蜗牛互联网12 小时前
Python + JSON Schema 实现工单结构化输出与本地复核
java·人工智能·后端