gpt4 book ai didi

java - 获取两个不同日期的日期范围

转载 作者:行者123 更新时间:2023-12-02 11:35:45 25 4
gpt4 key购买 nike

我有两个日期:初始日期和最终日期。我需要能够快速获得给定月份的所有临时天数。问题是日期中的每个数字都是由一个变量引起的。原因是我使用带有范围的日期选择器,但所有值都是单独给出的(如 startDay、startMonth、startYear 和 endDay、endMonth、endYear)。所以,我需要获取这些日期之间的所有日期。它必须看起来像这样:

"24/02/2018|25/02/2018|26/02/2018|27/02/2018|28/02/2018|01/03/2018"

看看这个:01/03/2018。

解决方案:

fun getDaysBetweenDates(startdate: Date, enddate: Date): List<String> {
val dates = ArrayList<String>()
val calendar = GregorianCalendar()
calendar.time = startdate

while (calendar.time.before(enddate)) {
val result = calendar.time
val formatter = SimpleDateFormat("dd/MM/yyyy")
val today = formatter.format(result)
today.split("|")
dates.add(today)
calendar.add(Calendar.DATE, 1)
}
return dates
}

嗯,感谢您对 OleV.V 的帮助。和asm0dey。

最佳答案

看起来您可以通过简单的 while 循环实现您想要的效果 - 只需将天数逐一添加到初始日期,直到到达日期范围的末尾。

所以它看起来像

val interimDates = arrayListOf<Date>()
var initial: Date = Date()// obtained earlier
val c = Calendar.getInstance()
c.time = initial
while (initial < finalDate /*also obtained earlier*/) {
c.add(Calendar.DATE, 1)
interimDates.add(c.time)
initial = c.time
}

最后interimDates将包含所有临时日期

关于java - 获取两个不同日期的日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48960945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com