哦,孩子,你还没意识到,你刚刚打开了潘多拉魔盒:时间是非常怪异的(尤其是在过去),它不像计算两个时间戳之间的差那么简单,如果你想了解其中的疯狂,我强烈推荐this video by Tom Scott。 但不管怎样,对于你的问题:
import java.time.Duration
import java.time.LocalDate
val firstTimestampInclusive = LocalDate.of(2000, 2, 27)
val secondTimestampExclusive = LocalDate.of(2000, 3, 1)
val numberOfDays = Duration.between(firstTimestampInclusive.atStartOfDay(), secondTimestampExclusive.atStartOfDay()).toDays()
println("Number of days between $firstTimestampInclusive and $secondTimestampExclusive: $numberOfDays")
这将打印以下内容:
Number of days between 2000-02-28 and 2000-03-01: 2
val cal = Calendar.getInstance()
cal.time = date1
val day1 = cal.get(Calendar.DAY_OF_YEAR)
val cal2 = Calendar.getInstance()
cal2.time = date2
val day2 = cal2.get(Calendar.DAY_OF_YEAR)
2条答案
按热度按时间3qpi33ja1#
哦,孩子,你还没意识到,你刚刚打开了潘多拉魔盒:时间是非常怪异的(尤其是在过去),它不像计算两个时间戳之间的差那么简单,如果你想了解其中的疯狂,我强烈推荐this video by Tom Scott。
但不管怎样,对于你的问题:
这将打印以下内容:
编辑:由于许多原因,使用
java.util.Date
和java.util.Calendar
是讨论过的,您应该使用java.time
代替(正如我在回答中提到的)。t1rydlwq2#
day 1和day 2是0-365之间的整数