对于以下Period
计算:
Period.between(LocalDate.of(2015, 8, 1), LocalDate.of(2015, 9, 2))
结果是:
P1M1D
这相当于 31 天 + 1 天 = 32 天。
为了这Period
:
Period.between(LocalDate.of(2015, 8, 1), LocalDate.of(2015, 10, 2))
结果是:
P2M1D
这相当于:31 天(8 月)+ 30 天(9 月)+ 1(10 月)= 62 天
里面有没有一个方法java.time
包将给出一个天数Period
?我找不到一个。不确定我是否忽略了任何东西,或者它是否根本不存在。
来自文档:
使用基于日期的值(年、月、
天),使用Period
班级。这Period
类提供了各种get
方法,例如getMonths
, getDays
, and getYears
.要表示以单个时间单位(例如天)测量的时间量,您可以使用ChronoUnit.between
method.
LocalDate today = LocalDate.now();
LocalDate birthday = LocalDate.of(1960, Month.JANUARY, 1);
Period p = Period.between(birthday, today);
long p2 = ChronoUnit.DAYS.between(birthday, today);
System.out.println("You are " + p.getYears() + " years, " + p.getMonths() +
" months, and " + p.getDays() +
" days old. (" + p2 + " days total)");
该代码产生类似于以下内容的输出:
You are 53 years, 4 months, and 29 days old. (19508 days total)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)