首页 >后端开发 >Golang >如何在 Go 中比较日期和时间?

如何在 Go 中比较日期和时间?

DDD
DDD原创
2024-12-20 19:01:09788浏览

How to Compare Dates and Times in Go?

比较 Go 中的日期和时间

在 Go 中,有多种方法来比较日期和时间。以下是实现它的方法:

使用时间包:

时间包提供了处理时间信息的方法,包括比较。可以使用 Before、After 和 Equal 方法比较时间点。您还可以使用 Sub 方法减去两个瞬间,从而得到 Duration。 Add 方法结合了时间和持续时间,生成一个新的时间。

示例:

import (
    "fmt"
    "time"
)

func main() {
    start, _ := time.Parse(time.RFC822, "01 Jan 15 10:00 UTC")
    end, _ := time.Parse(time.RFC822, "01 Jan 16 10:00 UTC")

    in, _ := time.Parse(time.RFC822, "01 Jan 15 20:00 UTC")
    out, _ := time.Parse(time.RFC822, "01 Jan 17 10:00 UTC")

    if inTimeSpan(start, end, in) {
        fmt.Println(in, "is between", start, "and", end, ".")
    }

    if !inTimeSpan(start, end, out) {
        fmt.Println(out, "is not between", start, "and", end, ".")
    }
}

func inTimeSpan(start, end, check time.Time) bool {
    return check.After(start) && check.Before(end)
}

以上是如何在 Go 中比较日期和时间?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn