Golang 时间和日期相关函数


一、基本介绍


1.格式化日期时间

2.时间的常量


二、使用介绍


1.内置函数


一、基本介绍


在编程中,程序员会经常使用到日期相关的函数,比如:统计某段代码执行花费的时间等等。在 Go 中,开发者为我们提供了 time 包,用于显示时间以及测量使用(日历的计算采用的是公历),详细信息见:Golang 的标准库


1)time.Time 类型:用于表示时间



输出:now type = time.Time && now = 2021-12-04 14:26:56.096042 +0800 CST m=+0.002252801


2)查看各个时间显示信息



1.格式化日期时间


1)通过 Printf 和 Sprintf 这两种方式都可以



2)通过 time.Format() 方式



  • PS:2006/01/02 15:04:05 这个格式是固定的,并不可以根据当前时间来自定义配置。


2.时间的常量



  • 常量的作用: 在程序中可以用于获取指定时间单位的时间,比如我们想要得到 100 毫秒(100 * time.Millisecond)


1)时间常量和 Sleep (休眠) 配合使用



2)time 中 Unix 和 UnixNano 的使用:



  • 输出:Unix 的时间戳 = 1638604549 && Unixnano 的时间戳 = 1638604549410002500


Unix 和 Unixnao 的区别在于: 前者显示的是秒数,后者显示的是纳秒(这两个都是从 1970 年 1 月 1 日 开始,到现在的时间)


二、使用介绍




1.内置函数


在 Go 中,开发者为了编程方便,提供了一些函数,这些函数可以直接使用,我们称为 Go 的内置函数。


  1. len:用于统计字符串长度,如:string array slice map channel。
  2. new:用于分配内存,主要用来 分配值类型,比如 int float32 struct 等等,返回的是指针。
  3. make:用于分配内存地址,主要用来 分配引用类型,比如 channeld map slice 等等。

以上只是部分的内置函数,更多内置函数见:Golang 标准库( builtin 包中)


new 的使用介绍:



  • new 其实就是分配了个空间,并装了个数值(0),然后又分配了一个空间存这个数值的内存地址;
  • 最后将定义的变量值,指向这个存数值的内存地址。


输出:



image.png