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

相关推荐
举一个梨子zz25 分钟前
Java—— 可变参数、集合工具类、集合嵌套、不可变集合
java·开发语言·intellij-idea·需求分析
算法给的安全感26 分钟前
bfs-最小步数问题
java·算法·宽度优先
jstart千语42 分钟前
【消息队列】RabbitMQ基本认识
java·服务器·分布式·rabbitmq
泽020243 分钟前
C++类和对象之相关特性
java·开发语言·c++
唐僧洗头爱飘柔95271 小时前
【SSM-SpringMVC(二)】Spring接入Web环境!本篇开始研究SpringMVC的使用!SpringMVC数据响应和获取请求数据
java·spring·文件上传·页面跳转·数据响应·获取请求数据·静态资源访问
-曾牛1 小时前
Spring AI 集成 Mistral AI:构建高效多语言对话助手的实战指南
java·人工智能·后端·spring·microsoft·spring ai
在未来等你1 小时前
互联网大厂Java求职面试:电商商品推荐系统中的AI技术应用
java·缓存·kafka·推荐系统·向量数据库·jvm调优·spring ai
@ chen2 小时前
常见排序算法及其java实现
java·算法·排序算法
带刺的坐椅2 小时前
SpringBoot2 可以使用 SolonMCP 开发 MCP(江湖救急)
java·spring·ai·solon·mcp
shengjk12 小时前
序列化和反序列化:从理论到实践的全方位指南
java·大数据·开发语言·人工智能·后端·ai编程