📜  java.time.LocalDate类(1)

📅  最后修改于: 2023-12-03 15:01:35.399000             🧑  作者: Mango

Java.time.LocalDate类

java.time.LocalDate类是Java 8引入的日期类之一。它提供了处理日期的方法,而不涉及时间和时区。本文将介绍java.time.LocalDate类及其使用方法。

介绍

java.time.LocalDate表示ISO日历中的日期(年、月、日)。它是一个不可变的类,因此安全可靠。可以用于比较日期、计算日期间隔等操作。

创建

java.time.LocalDate有很多不同的方法可以用来创建新的日期对象。

// 创建当前日期对象
LocalDate today = LocalDate.now();

// 从年、月、日创建日期对象
LocalDate date1 = LocalDate.of(2022, 07, 31);

// 从字符串创建日期对象
LocalDate date2 = LocalDate.parse("2022-07-31");
方法

以下是java.time.LocalDate中一些重要的方法:

格式化输出
String formattedDate = LocalDate.now().format(DateTimeFormatter.ISO_LOCAL_DATE);
System.out.println(formattedDate); // 2022-07-31
获取日期相关信息
LocalDate date = LocalDate.now();
int year = date.getYear(); // 2022
int month = date.getMonthValue(); // 7
Month monthEnum = date.getMonth(); // JULY
int day = date.getDayOfMonth(); // 31
DayOfWeek dow = date.getDayOfWeek(); // SUNDAY
int len = date.lengthOfMonth(); // 31
boolean leap = date.isLeapYear(); // false
操作日期
LocalDate date1 = LocalDate.now();
LocalDate date2 = date1.plusDays(7); // 加7天
LocalDate date3 = date2.minusMonths(2); // 减2个月
日期比较
LocalDate date1 = LocalDate.of(2022, 7, 31);
LocalDate date2 = LocalDate.parse("2022-07-31");

boolean result1 = date1.equals(date2); // true
boolean result2 = date1.isBefore(date2); // false
boolean result3 = date1.isAfter(date2); // false
总结

java.time.LocalDate类提供了很多有用的方法来处理日期,非常适合Java程序员在自己的代码中使用。它是Java 8中引入的日期类之一,属于Java标准库中的一部分,因此开发人员无需导入第三方库即可使用。我们建议在编写处理日期的代码时使用该类。