日期之间的差异-Kotlin

um6iljoc  于 2022-11-25  发布在  Kotlin
关注(0)|答案(1)|浏览(172)

伙计们!
我需要你的帮助。这基本上是个逻辑问题。
我有一个项目的发布日期。例如:10/12/2022
我需要一个函数来计算这个日期从现在开始,有几个规则:如果差值小于一小时,则返回字符串:“15分钟前发布”如果差值小于一天,则返回字符串:“Published 4 hours ago”如果差值大于一天,则返回字符串:“发表于2022年10月12日”
我该怎么做?
谢谢你的帮助!
私人资金计算时间(日期:长整型):字符串{
返回“”}

b1zrtrql

b1zrtrql1#

假设您实际上没有使用long作为参数,而是使用了一个时间单位,则解决方案可能如下所示

fun calculateTime(date: Instant): String {
    val passedTime = Duration.between(date, Instant.now())
    return if (passedTime.toHours() < 1)
        "Published 15 minutes ago"
    else if (passedTime.toDays() < 1)
        "Published 4 hours ago"
    else {
        DateTimeFormatter.ofPattern("dd/MM/yyyy")
            .withZone(ZoneId.systemDefault())
            .format(date)
    }
}

相关问题