Period.between不包含Java中的最后一天

时间:2019-10-18 07:14:55

标签: java period

Period difference = Period.between(01.01.2018,31.01.2018) 

difference.getMonths()给出零,而difference.getDays()给出30天,无论如何都包括最后一天?

2 个答案:

答案 0 :(得分:3)

答案非常简单:只需在结果期间致电plusDays(1)

Period.between不包括故意的结束日期。为了包括最后一天,您必须自己手动添加一天。


这种包含起点并排除终点的模式非常普遍。例如,String.substring(int startIndex, int endIndex)以及IntStream.range(int startInclusive, int endExclusive)

答案 1 :(得分:3)

它在文档中(不包括结束日期):

  

包括开始日期,但不包括结束日期。

您只需通过endDate.plusDays(1)

在结束日期中增加一天