Java 日期和时间
Java 日期
Java 没有内置的 Date 类,但我们可以导入 java.time
包来使用日期和时间 API。该软件包囊括了许多日期和时间类。例如:
类 | 描述 |
---|---|
LocalDate |
表示日期(年、月、日(yyyy-MM-dd))。 |
LocalTime |
表示时间(小时、分钟、秒和纳秒 (HH-mm-ss-ns))。 |
LocalDateTime |
表示日期和时间 (yyyy-MM-dd-HH-mm-ss-ns)。 |
DateTimeFormatter |
用于显示和解析日期时间对象的格式化程序。 |
提示:如果您还不理解包是什么,请阅读我们的 Java 包教程。
显示当前日期
如需显示当前日期,请导入 java.time.LocalDate
类,并使用其 now()
方法:
实例
import java.time.LocalDate; // 导入 LocalDate 类 public class Main { public static void main(String[] args) { LocalDate myObj = LocalDate.now(); // 创建日期对象 System.out.println(myObj); // 显示当前日期 } }
输出将是:
2021-10-27
显示当前时间
如需显示当前时间(小时、分钟、秒和纳秒),请导入 java.time.LocalTime
类,并使用其 now()
方法:
实例
import java.time.LocalTime; // 导入 LocalTime 类 public class Main { public static void main(String[] args) { LocalTime myObj = LocalTime.now(); System.out.println(myObj); } }
输出将是:
17:00:57.186168
显示当前日期和时间
如需显示当前日期和时间,请导入 java.time.LocalDateTime
类,并使用其 now()
方法:
实例
import java.time.LocalDateTime; // 导入 LocalDateTime 类 public class Main { public static void main(String[] args) { LocalDateTime myObj = LocalDateTime.now(); System.out.println(myObj); } }
输出将是:
2021-10-27T17:00:57.189681
格式化日期和时间
上例中的 "T" 用于将日期与时间分开。您可以使用 DateTimeFormatter
类和同一包中的 ofPattern()
方法来格式化或解析日期时间对象。下例将从日期时间中删除 "T" 和纳秒:
实例
import java.time.LocalDateTime; // 导入 LocalDateTime 类 import java.time.format.DateTimeFormatter; // 导入 DateTimeFormatter 类 public class Main { public static void main(String[] args) { LocalDateTime myDateObj = LocalDateTime.now(); System.out.println("格式化之前:" + myDateObj); DateTimeFormatter myFormatObj = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); String formattedDate = myDateObj.format(myFormatObj); System.out.println("格式化之后:" + formattedDate); } }
输出将是:
格式化之前:2021-10-27T17:00:57.189091 格式化之后:27-10-2021 17:00:57
ofPattern()
方法接受各种值,如果您想以不同的格式显示日期和时间。例如:
值 | 例子 | 试一试 |
---|---|---|
yyyy-MM-dd | "1988-09-29" | 试一试 |
dd/MM/yyyy | "29/09/1988" | 试一试 |
dd-MMM-yyyy | "29-Sep-1988" | 试一试 |
E, MMM dd yyyy | "Thu, Sep 29 1988" | 试一试 |