Learning Path
浏览 Java 相关教程与章节。
主流编程语言、数据结构、设计模式、正则与基础算法。
教程
548
Java LinkedList peek() 方法 Java LinkedList peek() 方法是 Java 中 LinkedList 类提供的一个非常有用的方法,它用于检索但不移除链表的第一个元素(头元素)。这个方法属于 Queue 接口的操作,LinkedList 实现了这个接口。 方法语法: public E peek() 返回值: 如果链表不为空,则返回链表的第一个元素 如果链表为空,则返回 null 方法..
Java LinkedList peekFirst() 方法 Java LinkedList peekFirst() 方法是 Java 中 LinkedList 类提供的一个实用方法,用于检索但不移除链表的第一个元素。如果链表为空,则返回 null。 方法语法 public E peekFirst() 方法特点 非破坏性操作:与 pollFirst() 或 removeFirst() 不同,peekFirst() 不会改..
Java LinkedList peekLast() 方法 Java LinkedList peekLast() 是 Java 中 LinkedList 类提供的一个方法,用于查看但不移除链表的最后一个元素。如果链表为空,则此方法返回 null。 语法格式 E peekLast() 方法特点 1. 非破坏性操作 peekLast() 方法只是查看链表的最后一个元素,不会从链表中移除该元素。 2. 空链表处理 当链表为空时,..
Java LinkedList poll() 方法 Java LinkedList poll() 方法是 Java 中 LinkedList 类提供的一个非常有用的方法,它用于检索并移除列表的第一个元素(头部元素)。这个方法属于 Queue 接口的一部分,LinkedList 实现了这个接口,因此可以作为队列使用。 方法语法: public E poll() 返回值: 如果列表不为空,则返回列表的第一个元素 如果列表为空,则..
Java LinkedList remove() 方法 Java LinkedList remove() 方法是 Java LinkedList 类中的一个重要方法,用于从链表中移除元素。LinkedList 是 Java 集合框架的一部分,实现了 List 和 Deque 接口。 remove() 方法有几种不同的形式,每种形式都有特定的用途: [mycode4 type='java'] E remove..
Java LinkedList removeFirst() 方法 Java LinkedList removeFirst() 是 Java 中 LinkedList 类提供的一个方法,用于移除并返回链表的第一个元素。这个方法属于 java.util.LinkedList 类,是双向链表数据结构的基本操作之一。 方法语法 public E removeFirst() 参数 此方法不需要任何参数。 返回值 返回被移除的链表第一..
Java LinkedList removeLast() 方法 Java LinkedList removeLast() 是 Java 中 LinkedList 类提供的一个常用方法,用于移除并返回链表中的最后一个元素。这个方法属于 java.util.LinkedList 类,是 Java 集合框架的一部分。 方法语法: public E removeLast() 返回值: 返回被移除的最后一个元素 如果链表为空,则抛出 N..
Java LinkedList set() 方法 Java LinkedList LinkedList 是 Java 集合框架中的一个重要类,它实现了 List 接口。set() 方法是 LinkedList 类提供的一个非常有用的方法,用于替换链表中指定位置的元素。 简单来说,set() 方法允许你: 通过索引访问链表中的特定位置 用新元素替换该位置的旧元素 返回被替换的旧元素 方法语法 set() 方法的完整语法如下: ..
Java LinkedList size() 方法 Java LinkedList size() 方法是 Java 中 LinkedList 类提供的一个常用方法,它属于 java.util 包。这个方法的主要作用是返回当前链表中元素的数量。 方法语法: [mycode4 type='java'] public int size() [/mycode4] 返回值: 返回 int 类型的值,表示链表中元素..
Java LinkedList toArray() 方法 Java LinkedList toArray() 是 Java 中 LinkedList 类提供的一个实用方法,用于将链表中的所有元素转换为一个数组。这个方法属于 java.util.LinkedList 类,继承自 java.util.AbstractCollection 类。 方法语法 LinkedList 类提供了两种 toArray() 方法的重载形式: 基本形式..
Java LinkedList Java 集合框架 链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的地址。 链表可分为单向链表和双向链表。 一个单向链表包含两个值: 当前节点的值和一个指向下一个节点的链接。 一个双向链表有三个整数值: 数值、向后的节点链接、向前的节点链接。 Java LinkedList(链表) 类似于 ArrayList..
Java LocalDate 类 LocalDate 是 Java 8 中引入的一个不可变日期类,属于 java.time 包的一部分。LocalDate 表示不带时区的日期(年-月-日),例如 "2023-05-15"。LocalDate 不包含时间和时区信息,非常适合处理生日、节假日等只需要日期的场景。 LocalDate 的主要特点 1. 不可变性 LocalDate 实例是不可变的,任..
Java LocalDateTime 类 LocalDateTime 是 Java 8 引入的日期时间 API(java.time 包)中的一个重要类,它表示一个不可变的日期时间对象,不包含时区信息。这个类可以存储年、月、日、时、分、秒和纳秒级别的日期时间信息。 LocalDateTime 的特点 不可变性:所有 java.time 类都是不可变的,线程安全 不包含时区:只表示本地日期和时间 精确到纳秒:可以表示精确到纳秒级别的..
Java LocalTime 类 LocalTime 是 Java 8 引入的日期时间 API (java.time 包)中的一个重要类,用于表示不带时区信息的时间。它专门处理一天中的时间,精确到纳秒级别。 LocalTime 类的特点 1. 不可变性 LocalTime 是不可变类,所有修改操作都会返回新的实例,原始对象保持不变。 2. 无时区信息 LocalTime 不包含时区信息,仅表示本地时间。 3. 时间精度 支持从..
Java 日志框架 Log4j Java 常用类库 Log4j 是 Apache 软件基金会下的一个开源日志记录框架,专为 Java 应用程序设计。 Log4j 提供了灵活的日志记录功能,允许开发者控制日志信息的输出格式、级别和目标位置。 主要特点: 高度可配置 支持多种日志级别 可将日志输出到多种目的地(控制台、文件、数据库等) 线程安全 性能优异 Log4j 的核心组件 Logger(日志记录器) Logger 是 ..
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,就需要使用循环结构。 Java中有三种主要的循环结构: while 循环 do…while 循环 for 循环 在 Java5 中引入了一种主要用于数组的增强型 for 循环。 while 循环 while是最基本的循环,它的结构为: [mycod..
Java Map 接口 Map 接口中键和值一一映射. 可以通过键来获取值。 给定一个键和一个值,你可以将该值存储在一个 Map 对象。之后,你可以通过键来访问对应的值。 当访问的值不存在的时候,方法就会抛出一个 NoSuchElementException 异常。 当对象的类型和 Map 里元素类型不兼容的时候,就会抛出一个 ClassCastException 异常。 当在不允许使用 Null 对象..
Java 方法 在前面几个章节中我们经常使用到 System.out.println(),那么它是什么呢? println() 是一个方法。 System 是系统类。 out 是标准输出对象。 这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 println()。 那么什么是方法呢? Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程..
Java Mock 测试框架 Mockito Java 常用类库 什么是 Mock 测试? 在软件开发中,单元测试是验证代码功能的重要手段。然而,当我们的代码依赖于外部系统(如数据库、网络服务等)时,直接进行测试会面临几个问题: 外部依赖可能不稳定或不可用 测试执行速度变慢 难以模拟各种边界条件 Mock 测试(模拟测试)通过创建对象的"替身"来解决这些问题。Mock 对象可以: 模拟真实对..
Java 修饰符 Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符 修饰符用来定义类、方法或者变量,通常放在语句的最前端。我们通过下面的例子来说明: [mycode3 type='java'] public class ClassName { // ... } private boolean myFlag; static final double weeks = 9.5; ..
Java 多线程编程 Java 给多线程编程提供了内置的支持。 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个或多个线程。一个线程不能独立的存在,它必须是进程的一部分。一个进程一直运行,直到所有的非守护线程都结束运行后才能结束。 ..
Java MyBatis 框架 Java 常用类库 MyBatis 是一个优秀的持久层框架,它简化了 Java 应用程序与关系型数据库之间的交互。MyBatis 通过 XML 或注解的方式将 SQL 语句与 Java 对象进行映射,避免了传统 JDBC 编程中的大量样板代码。 MyBatis 的核心特性 1. SQL 与代码分离 MyBatis 允许开发者将 SQL 语句从 Java 代码中分离出来,存储在 XML 文件或注解..
Java MySQL 连接 本章节我们为大家介绍 Java 如何使用 使用 JDBC 连接 MySQL 数据库。 Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connector/j/,解压后得到 jar 库文件,然后在对应的项目中导入该库文件。 你可以下载本站提供的 jar 包:mysql-connector-java-5.1.39-bin.jar 本实例使..
Java 网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。 java.net 包中提供了两种常见的网络协议的支持: TCP:TCP(英语:Transmission Control Protocol,传输控制协议) 是一种面向连接的、可靠的、..