Java Period between()方法及实例
Java中Period类的between()方法用于获得一个由两个给定日期(包括开始日期和不包括结束日期)之间的年、月、日数组成的周期。
这个周期的获得方法如下。
去掉完整的月份。现在,计算剩余的天数。然后,调整以确保两者有相同的符号。现在,以12个月的年份为基础,将月数分成年和月。如果月末日大于或等于月初日,则视为一个月(例如:从2017-05-12到2018-07-18是一年两个月六天)。注意: 从上述公式中得到的周期可以是一个负数,如果结束日期在开始日期之前。负号在年、月、日中都是一样的。
语法
public static Period between(LocalDate startDateInclusive, LocalDate endDateExclusive)
参数
startDateInclusive – 开始日期是包括在内的,不能为空。endDateExclusive – 结束日期是排他性的,不能为空。返回值: period的between()函数返回给定的开始和结束日期之间的时间。
下面是上述函数的实现。
// Java code to show the period// between given start and end dateimport java.time.LocalDate;import java.time.Period; public class PeriodClass { // Function to calculate period between // start and end date static void calculatePeriod(LocalDate startDate, LocalDate endDate) { Period period = Period.between(startDate, endDate); System.out.println("Period between start and end " + "date is : " + period); } // Driver Code public static void main(String[] args) { // Start date LocalDate startDate = LocalDate.parse("2017-02-13"); // End date LocalDate endDate = LocalDate.parse("2018-08-20"); calculatePeriod(startDate, endDate); }}
输出:
Period between start and end date is : P1Y6M7D
参考资料 : https://docs.oracle.com/javase/8/docs/api/java/time/Period.html#between-java.time.LocalDate-java.time.LocalDate-
