【JAVA基础篇教学】第八篇:Java中List详解说明

简介: 【JAVA基础篇教学】第八篇:Java中List详解说明

博主打算从0-1讲解下java基础教学,今天教学第八篇:Java中List详解说明。


在 Java 编程中,List 接口是一个非常常用的集合接口,它代表了一个有序的集合,可以包含重复的元素。List 接口提供了一系列操作方法,可以方便地对列表进行增删改查等操作。本文将介绍 List 接口的基本概念以及如何在 Java 中使用 List 接口。

一、List 接口概述

List 接口是 Java Collections Framework 中的一部分,位于 java.util 包中。它是一个接口,定义了一系列操作有序集合的方法,可以允许包含重复元素。

List 接口的主要特点包括:

  • 有序性:List 中的元素按照它们插入的顺序进行存储,可以根据索引访问每个元素。
  • 允许重复元素:List 可以包含重复的元素,同一个元素可以出现多次。


二、List 接口的常见实现类

Java 中常见的 List 接口的实现类包括:

  • ArrayList:基于数组实现的动态数组,支持快速随机访问。
  • LinkedList:基于双向链表实现的列表,适合插入、删除操作频繁的场景。
  • Vector:线程安全的动态数组,已被 ArrayList 取代,不推荐使用。


在本文中,我们将主要介绍 ArrayList 的使用。

三、教学案例

1、创建List

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
        // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
 
        System.out.println(myList);
    }
}

2、获取集合大小

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
        // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
        System.out.println(myList);
 
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
 
    }
}

3、访问集合元素

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
        // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
        System.out.println(myList);
 
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
 
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
       
       
    }
}

4、遍历列表并打印每个元素

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
        // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
        System.out.println(myList);
 
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
 
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
        // 遍历列表并打印每个元素
        System.out.println("All elements:");
        for (String item : myList) {
            System.out.println(item);
        }
 
    }
}

5、在指定位置插入元素

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
        // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
        System.out.println(myList);
 
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
 
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
        // 遍历列表并打印每个元素
        System.out.println("All elements:");
        for (String item : myList) {
            System.out.println(item);
        }
 
        // 在指定位置插入元素
        myList.add(1, "Grapes");
        System.out.println("After inserting Grapes at index 1:");
        System.out.println("新的集合:"+ myList);
 
        
    }
}

6、删除指定位置的元素

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
         // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
 
        System.out.println(myList);
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
        // 遍历列表并打印每个元素
        System.out.println("All elements:");
        for (String item : myList) {
            System.out.println(item);
        }
 
        // 在指定位置插入元素
        myList.add(1, "Grapes");
        System.out.println("After inserting Grapes at index 1:");
        System.out.println("新的集合:" + myList);
 
        // 删除指定位置的元素
        myList.remove(2);
        System.out.println("After removing element at index 2:");
        System.out.println("删除后集合:" + myList);
    }
}

7、检查列表中是否包含某个元素

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
         // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
 
        System.out.println(myList);
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
        // 遍历列表并打印每个元素
        System.out.println("All elements:");
        for (String item : myList) {
            System.out.println(item);
        }
 
        // 在指定位置插入元素
        myList.add(1, "Grapes");
        System.out.println("After inserting Grapes at index 1:");
        System.out.println("新的集合:" + myList);
 
        // 删除指定位置的元素
        myList.remove(2);
        System.out.println("After removing element at index 2:");
        System.out.println("删除后集合:" + myList);
 
        // 检查列表中是否包含某个元素
        boolean containsBanana = myList.contains("Banana");
        System.out.println("Does list contain Banana? " + containsBanana);
    }
}

8、清空列表

import java.util.ArrayList;
import java.util.List;
 
public class Main {
    public static void main(String[] args) {
         // 创建一个 ArrayList 对象
        List<String> myList = new ArrayList<>();
 
        // 添加元素到列表
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");
 
        System.out.println(myList);
        // 获取列表大小
        int size = myList.size();
        System.out.println("List size: " + size);
        // 访问列表元素
        System.out.println("First element: " + myList.get(0));
        System.out.println("Last element: " + myList.get(size - 1));
 
        // 遍历列表并打印每个元素
        System.out.println("All elements:");
        for (String item : myList) {
            System.out.println(item);
        }
 
        // 在指定位置插入元素
        myList.add(1, "Grapes");
        System.out.println("After inserting Grapes at index 1:");
        System.out.println("新的集合:" + myList);
 
        // 删除指定位置的元素
        myList.remove(2);
        System.out.println("After removing element at index 2:");
        System.out.println("删除后集合:" + myList);
 
        // 检查列表中是否包含某个元素
        boolean containsBanana = myList.contains("Banana");
        System.out.println("Does list contain Banana? " + containsBanana);
 
        // 清空列表
        myList.clear();
        System.out.println("After clearing the list:");
        System.out.println("清空后集合:"+ myList);
    }
}

本文介绍了 Java 中 List 接口的基本概念以及使用示例。List 接口是 Java 中最常用的集合接口之一,能够方便地对有序集合进行操作。在实际开发中,我们经常会使用 List 接口及其实现类来处理各种数据集合。希望本文能够帮助您更好地理解和使用 List 接口。

相关文章
|
2月前
|
Java Linux
java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类
本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。
50 2
|
10天前
|
安全 Java 程序员
深入Java集合框架:解密List的Fail-Fast与Fail-Safe机制
本文介绍了 Java 中 List 的遍历和删除操作,重点讨论了快速失败(fail-fast)和安全失败(fail-safe)机制。通过普通 for 循环、迭代器和 foreach 循环的对比,详细解释了各种方法的优缺点及适用场景,特别是在多线程环境下的表现。最后推荐了适合高并发场景的 fail-safe 容器,如 CopyOnWriteArrayList 和 ConcurrentHashMap。
38 5
|
8天前
|
Java 程序员 编译器
Java|如何正确地在遍历 List 时删除元素
从源码分析如何正确地在遍历 List 时删除元素。为什么有的写法会导致异常,而另一些不会。
15 3
|
8天前
|
Java 程序员
Java|List.subList 踩坑小记
不应该仅凭印象和猜测,就开始使用一个方法,至少花一分钟认真读完它的官方注释文档。
13 1
|
29天前
|
开发框架 IDE Java
java制作游戏,如何使用libgdx,入门级别教学
本文是一篇入门级教程,介绍了如何使用libgdx游戏开发框架创建一个简单的游戏项目,包括访问libgdx官网、设置项目、下载项目生成工具,并在IDE中运行生成的项目。
41 1
java制作游戏,如何使用libgdx,入门级别教学
|
2月前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
347 37
|
21天前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
15 1
|
1月前
|
Oracle Java 关系型数据库
|
30天前
|
前端开发 Java API
Swagger接口文档 —— 手把手教学,全方位超详细小白能看懂,百分百能用Java版
本文提供了一份详细的Swagger接口文档生成工具的使用教程,包括了导入依赖、配置类设置、资源映射、拦截器配置、Swagger注解使用、生成接口文档、在线调试页面访问以及如何设置全局参数(如token),旨在帮助Java开发者快速上手Swagger。
238 0
Swagger接口文档 —— 手把手教学,全方位超详细小白能看懂,百分百能用Java版
|
30天前
|
安全 算法 Java
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
本文提供了在数据库中对密码等敏感信息进行加盐加密的详细教程,包括手写MD5加密算法和使用Spring Security的BCryptPasswordEncoder进行加密,并强调了使用BCryptPasswordEncoder时需要注意的Spring Security配置问题。
92 0
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!