📅  最后修改于: 2023-12-03 15:01:51.833000             🧑  作者: Mango
ChronoLocalDate类是Java库中处理日期的接口,它定义了处理日期的基本方法,如 getDayOfMonth()
、getMonth()
和 getYear()
等。其中 until()
方法用于计算两个日期之间的时间差,返回一个 ChronoPeriod
对象,表示两个日期之间相差的年、月、日等。
ChronoPeriod until(ChronoLocalDate endDateExclusive)
该方法接收一个参数 endDateExclusive
,表示计算时间差的结束日期。返回一个 ChronoPeriod
对象,表示两个日期之间相差的时间。
以下示例演示了如何使用 until()
方法计算两个日期之间相差的时间,并打印出时间差的各个字段。
import java.time.LocalDate;
import java.time.Period;
public class ChronoLocalDateUntilExample {
public static void main(String[] args) {
LocalDate startDate = LocalDate.of(2021, 9, 1);
LocalDate endDate = LocalDate.of(2021, 10, 1);
Period period = startDate.until(endDate);
int years = period.getYears();
int months = period.getMonths();
int days = period.getDays();
System.out.println("相差年数:" + years);
System.out.println("相差月数:" + months);
System.out.println("相差天数:" + days);
}
}
输出结果:
相差年数:0
相差月数:1
相差天数:0
可以看到,起始日期为 2021 年 9 月 1 日,结束日期为 2021 年 10 月 1 日,两个日期之间相差一个月。 Period
对象的 getYears()
方法和 getDays()
方法返回的结果均为 0,因为这两个日期的年份和天数都相同。getMonths()
方法返回的结果是 1,表示两个日期之间相差一个月。