Java显示时间格式有哪些具体方法及操作步骤详解?
- 后端开发
- 2025-10-11
- 5
在Java语言中,显示时间格式可以通过多种方式实现,以下是一些常用的方法:
使用SimpleDateFormat类
SimpleDateFormat类是Java中处理日期和时间的常用类,以下是如何使用SimpleDateFormat来显示时间格式的示例:
import java.text.SimpleDateFormat; import java.util.Date; public class TimeFormatExample { public static void main(String[] args) { // 创建SimpleDateFormat对象 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HH:mm:ss"); // 获取当前时间 Date now = new Date(); // 格式化时间 String formattedTime = sdf.format(now); // 输出格式化后的时间 System.out.println("Formatted Time: " + formattedTime); } }
在这个例子中,我们使用了"yyyyMMdd HH:mm:ss"格式化字符串来指定时间格式。

使用DateTimeFormatter类(Java 8及以上)
DateTimeFormatter是Java 8引入的一个新的日期时间API,它提供了更灵活和强大的日期时间处理能力,以下是如何使用DateTimeFormatter来显示时间格式的示例:
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class TimeFormatExample { public static void main(String[] args) { // 创建DateTimeFormatter对象 DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyyMMdd HH:mm:ss"); // 获取当前时间 LocalDateTime now = LocalDateTime.now(); // 格式化时间 String formattedTime = now.format(dtf); // 输出格式化后的时间 System.out.println("Formatted Time: " + formattedTime); } }
在这个例子中,我们使用了"yyyyMMdd HH:mm:ss"格式化字符串来指定时间格式。
使用LocalTime类
如果你只需要显示时间,可以使用LocalTime类和DateTimeFormatter来格式化时间,以下是一个示例:

import java.time.LocalTime; import java.time.format.DateTimeFormatter; public class TimeFormatExample { public static void main(String[] args) { // 创建DateTimeFormatter对象 DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm:ss"); // 获取当前时间 LocalTime now = LocalTime.now(); // 格式化时间 String formattedTime = now.format(dtf); // 输出格式化后的时间 System.out.println("Formatted Time: " + formattedTime); } }
在这个例子中,我们只使用了"HH:mm:ss"格式化字符串来指定时间格式。
使用Calendar类
Calendar类是Java中处理日期和时间的另一个常用类,以下是如何使用Calendar来显示时间格式的示例:

import java.text.SimpleDateFormat; import java.util.Calendar; public class TimeFormatExample { public static void main(String[] args) { // 创建Calendar对象 Calendar calendar = Calendar.getInstance(); // 创建SimpleDateFormat对象 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HH:mm:ss"); // 格式化时间 String formattedTime = sdf.format(calendar.getTime()); // 输出格式化后的时间 System.out.println("Formatted Time: " + formattedTime); } }
在这个例子中,我们使用了Calendar.getInstance()来获取当前时间,然后使用SimpleDateFormat来格式化时间。
表格对比
| 类别 | 类名 | 描述 | 示例代码 |
|---|---|---|---|
| 旧版API | SimpleDateFormat | 用于解析和格式化日期和时间的旧版API | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HH:mm:ss"); |
| 新版API | DateTimeFormatter | Java 8引入的新版日期时间API,提供更灵活和强大的日期时间处理能力 | DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyyMMdd HH:mm:ss"); |
| 旧版API | Calendar | 用于处理日期和时间的旧版API | Calendar calendar = Calendar.getInstance(); |
| 新版API | LocalTime | Java 8引入的新版日期时间API,用于表示时间 | LocalTime now = LocalTime.now(); |
FAQs
Q1: 如何将时间格式化为24小时制?
A1: 在格式化字符串中,使用HH来表示24小时制的小时,使用"HH:mm:ss"将时间格式化为24小时制。
Q2: 如何将时间格式化为12小时制并显示AM/PM?
A2: 在格式化字符串中,使用hh来表示12小时制的小时,并使用a来表示AM/PM,使用"hh:mm:ss a"将时间格式化为12小时制并显示AM/PM。