Java日期时间类详解与示例

5星 · 超过95%的资源 0 下载量 151 浏览量 更新于2024-09-03 收藏 99KB PDF 举报
"这篇文章主要汇总了JAVA中处理日期时间的各种类的使用方法,包括java.util.Date、java.time.format.DateTimeFormatter、java.util.Calendar以及java.text.SimpleDateFormat等。通过示例代码展示了如何获取当前日期时间,以及这些类的核心方法和功能。" 在Java编程中,日期和时间的处理是常见的需求。以下是对标题和描述中提及的知识点的详细说明: 1. 日期时间类的包 - `java.util.Date`: 这是最基础的日期时间类,可以表示特定的瞬间,精确到毫秒。在Java 8之后,虽然`java.time`包提供了更好的日期时间API,但`Date`类仍然被广泛使用。 - `java.time.format.DateTimeFormatter`: Java 8引入的新类,用于格式化和解析日期、时间和日期时间,提供了更灵活的格式化选项。 - `java.util.Calendar`: 是一个抽象类,提供了日期和时间的API,支持各种日历系统。它是`Date`类的一个增强版,可以进行更复杂的日期时间操作。 - `java.text.SimpleDateFormat`: 是旧版日期时间格式化的类,用于将日期时间对象转换为字符串,或从字符串反向解析为日期时间。 2. java.util.Date类 - `new Date()`: 创建一个表示当前时间的`Date`对象。 - `System.currentTimeMillis()`: 获取自1970年1月1日以来的毫秒数,可以用来创建特定时间的`Date`对象。 - `getYear()`, `getMonth()`, `getDate()`: 获取年份、月份和日期,需要注意的是,年份需要加1900,月份需要加1。 - `toString()`: 将`Date`对象转换为可读的字符串形式。 - `toGMTString()`和`toLocaleString()`: 分别将日期时间转换为格林尼治标准时间和本地时区的字符串。 3. SimpleDateFormat类 - `SimpleDateFormat`用于格式化和解析日期时间,需要提供一个模式字符串来定义输出格式。例如:`"yyyy-MM-dd HH:mm:ss"`表示四位数的年份、两位数的月份、日期、小时、分钟和秒。 - 通过`format(Date date)`方法,我们可以将`Date`对象按照指定的模式转换为字符串。 - 使用`parse(String source)`方法,可以将符合模式的字符串解析为`Date`对象。 4. Java 8的日期时间API - `java.time.LocalDate`, `LocalDateTime`, `LocalTime`: 这些是Java 8引入的新类,它们提供了更清晰的日期、时间和日期时间操作。与`Date`不同,它们不包含时区信息。 - `LocalDate.now()`, `LocalDateTime.now()`: 获取当前日期或日期时间。 - `DateTimeFormatter.ofPattern(pattern)`: 创建一个`DateTimeFormatter`对象,用于格式化或解析`LocalDate`, `LocalDateTime`, `LocalTime`。 在实际开发中,选择使用哪种日期时间API取决于项目需求。如果兼容性是关键,可能需要使用`java.util.Date`和`SimpleDateFormat`。而如果是在Java 8及更高版本中,推荐使用`java.time`包的类,因为它们提供了更强大的功能和更好的API设计。