gpt4 book ai didi

Kotlin:如何迭代 Joda 区间内的所有日期?

转载 作者:IT老高 更新时间:2023-10-28 13:47:08 28 4
gpt4 key购买 nike

我想迭代给定 Joda 间隔内的所有日期:

val interval = Interval(DateTime.now().minusDays(42), DateTime.now())

如何在 Kotlin 中做到这一点?

最佳答案

深受您当前解决方案的启发:

fun Interval.toDateTimes() = generateSequence(start) { it.plusDays(1) }
.takeWhile(::contains)

用法:

interval.toDateTimes()
.forEach { println(it) }

如果您需要 LocalDate您仍然可以执行以下操作:

interval.toDateTimes()
.map(DateTime::toLocalDate)
.forEach { println(it) }

或作为Interval 的扩展功能再次:

fun Interval.toLocalDates() = toDateTimes().map(DateTime::toLocalDate)

如果您希望结束日期包含在内,请使用 takeWhile { it <= end }而是。

关于Kotlin:如何迭代 Joda 区间内的所有日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52077225/

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