📜  Golang 中的 time.Time.AddDate()函数示例

📅  最后修改于: 2021-10-25 02:31:12             🧑  作者: Mango

在 Go 语言中,时间包提供了确定和查看时间的功能。 Go 语言中的Time.AddDate()函数用于检查时间,相当于将指定的年数、月数和天数添加到给定的“t”。
例如,如果该方法的参数类似于 (-2, 4, 5) 并且声明的 t 是 2018 年 2 月 3 日,那么输出将是 2016 年 6 月 8 日。或年份超出正常范围,则自动转换为标准化范围。而且,这个函数是在time包下定义的。在这里,您需要导入“time”包才能使用这些功能。

句法:

func (t Time) AddDate(years int, months int, days int) Time

这里,“t”是规定的时间。

返回值:返回指定的年数、月数和天数加上指定的 t 的结果。

示例 1:

// Golang program to illustrate the usage of
// Time.AddDate() function
  
// Including main package
package main
  
// Importing fmt and time
import "fmt"
import "time"
  
// Calling main
func main() {
  
    // Declaring Time in UTC
    Time := time.Date(2018, 6, 4, 0, 0, 0, 0, time.UTC)
  
    // Calling AddDate method with all
    // its parameters
    t1 := Time.AddDate(1, 2, 5)
    t2 := Time.AddDate(5, -2, 9)
    t3 := Time.AddDate(0, 3, -3)
    t4 := Time.AddDate(1, 0, 0)
  
    // Prints output
    fmt.Printf("%v\n", Time)
    fmt.Printf("%v\n", t1)
    fmt.Printf("%v\n", t2)
    fmt.Printf("%v\n", t3)
    fmt.Printf("%v\n", t4)
}

输出:

2018-06-04 00:00:00 +0000 UTC
2019-08-09 00:00:00 +0000 UTC
2023-04-13 00:00:00 +0000 UTC
2018-09-01 00:00:00 +0000 UTC
2019-06-04 00:00:00 +0000 UTC

此处,返回的输出采用上面定义的 UTC 格式。

示例 2:

// Golang program to illustrate the usage of
// Time.AddDate() function
  
// Including main package
package main
  
// Importing fmt and time
import "fmt"
import "time"
  
// Calling main
func main() {
  
    // Declaring Time in UTC
    Time := time.Date(2020, 15, 34, 0, 0, 0, 0, time.UTC)
  
    // Calling AddDate method with all
    // its parameters
    t1 := Time.AddDate(3, 13, 35)
    t2 := Time.AddDate(2, -24, 29)
    t3 := Time.AddDate(4, 32, -31)
    t4 := Time.AddDate(5, 10, -11)
  
    // Prints output
    fmt.Printf("%v\n", Time)
    fmt.Printf("%v\n", t1)
    fmt.Printf("%v\n", t2)
    fmt.Printf("%v\n", t3)
    fmt.Printf("%v\n", t4)
}

输出:

2021-04-03 00:00:00 +0000 UTC
2025-06-07 00:00:00 +0000 UTC
2021-05-02 00:00:00 +0000 UTC
2027-11-02 00:00:00 +0000 UTC
2027-01-23 00:00:00 +0000 UTC

在这里,使用的范围超出了通常的范围,但它们在转换时被标准化。