Go语言学习、时间和日期类型

1、我们在使用go语言时间和 日期类型时,需要导入time包,导包方法,我就不多说了哈。

在go语言中,我们会使用time.Time 类型,用来表示时间。

获取当前时间,now:= time.Now()

package main

import (
	"fmt"
	"time"
)

func main() {
	now_time:= time.Now()
	fmt.Println(now_time)
}

得到如下结果

2020-07-05 12:04:21.3247109 +0800 CST m=+0.004010401

使用下面的方法,可以获取到当前时间的一些属性

time.Now().year(), 获取当前时间年

time.Now().Month(),获取当前时间月份

time.Now().Day(),获取当前时间日期天

time.Now().Hour(),获取当前小时时间

time.Now().Minute(),获取当前时间分钟时间

package main

import (
	"fmt"
	"time"
)

func main() {
	now_time:= time.Now()
	fmt.Println(now_time)

	fmt.Println(now_time.Year())
	fmt.Println(now_time.Month())
	fmt.Println(now_time.Day())
	fmt.Println(now_time.Hour())
	fmt.Println(now_time.Minute())


}

结果:

2020-07-05 12:10:58.6773158 +0800 CST m=+0.006015301
2020
July
5
12
10

time.Duration 用来表示纳秒

时间格式化问题:

这里特殊说明一下,在go语言中,时间格式化转换,必须使用go语言诞生时间来进行转换,不然转换出来的日期是不正确的。

Go语言诞生时间:2006/01/02 15:04:05

例子:

package main

import (
	"fmt"
	"time"
)

func main() {
	now_time:= time.Now()
	fmt.Println(now_time.Format("02/1/2006 15:04"))
	fmt.Println(now_time.Format("02/1/2006"))
	fmt.Println(now_time.Format("2006/1/02 15:04"))


}

结果如下:

05/7/2020 12:23
05/7/2020
2020/7/05 12:23

可以看到上面的结果,是我们通过go语言诞生日期转换出的当前时间。那么我们修改一下,go语言的诞生时间,看看,转换出来后是什么样子

错误案例

################################################################################################

package main

import (
	"fmt"
	"time"
)

func main() {
	now_time:= time.Now()
	fmt.Println(now_time.Format("02/1/2007 15:04"))
	fmt.Println(now_time.Format("02/5/2006"))
	fmt.Println(now_time.Format("2006/1/02 17:04"))

}

结果如下:

05/7/5007 12:25
05/35/2020
2020/7/05 77:25

可以看到,结果全部是错误了。这里是需要注意的地方。

##############################################################################################

猜你喜欢

转载自blog.csdn.net/u012798683/article/details/107137062