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详解)

相关推荐
SeaDhdhdhdhdh5 小时前
MCP Server 搭建与使用指南
java·ai·agent·mcp
YH55269846 小时前
GPT‑5.6 Sol 原本支持 1M 上下文,Codex 现已放开此前限制,如何看待这次调整?
java·jvm·人工智能·gpt·算法·chatgpt
AI_小站6 小时前
刚面完百度的 Agent 开发岗,我才发现:世界就是个巨大的草台班子
java·开发语言·人工智能·spring·百度·langchain
许彰午7 小时前
03-三种开发模式
java·架构
涟漪海洋7 小时前
创建最新的JDK25镜像,非root环境启动
java
Rain的Java大神之路8 小时前
短信接口被狂刷怎么处理
java·运维·后端·web安全·面试·架构·xss
2602_959960928 小时前
谢飞机面试大厂:Spring Boot、JVM、Redis、Kafka、微服务与音视频搜索场景求生实录
java·jvm·spring boot·redis·面试题
Zane1994128 小时前
CAS 与原子类:Java 如何实现无锁编程
java·开发语言
略略略咯咯9 小时前
AI玩具-study
java
xier_ran10 小时前
【infra之路】GPU 存储层次总结:L1 / L2 / HBM
java·网络·数据库