持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第13天,点击查看活动详情
文章概览
- 时间和日期相关函数
- 内置函数
时间和日期相关函数
在编写一个程序时,经常会有时间和日期的需求,Go语言中提供了时间和日期相关的函数,例如统计某段代码执行所花费的时间等。
注意事项
- 时间和日期相关函数,需要导入time包。
- time.Time类型表示时间。
- 使用 now := time.now()来获取到当前的时间,now的类型就是time.Time。
- 通过now可以获取到年月日,时分秒。
格式化日期时间
-
方法一
now = time.Now() fmt.Printf("当前年月日%02d-%02d-%02d %02d:%02d:%02d \n", now.Year(),now.Mohth(),now.Day(), now.Hour(),now.Minute(),now.Second()) -
方法二
fmt.Printf(now.Format("2006/01/02 15:04:05")) fmt.Println() fmt.Printf(now.Format("2006-01-02")) fmt.Println() fmt.Printf(now.Format("15:04:05")) fmt.Println() -
"2006/01/02 15:04:05"这个字符串的各个数字是固定的,是go语言的诞生时间,这个字符串可以自由组合,可以按照程序需要来返回时间和日期。
时间的常量
conse (
Nanosecond = 1ns (纳秒)
Microsecond = 1000 * Nanosecond = 1 (微秒)
Millisecond = 1000 * Microsecond = 1 (毫秒)
Second = 1000 * Millisecond = 1 (秒)
Minute = 60 * Second = 1 (分钟)
Hour = 60 * Minute = 1 (小时)
)
常量的作用
在程序中可以用于获取指定时间单位的时间,比如要得到100毫秒:100*time.Millisecond。
休眠
func Sleep(d Duration)
例子
time.Sleep(100*time.Millisecond)
获取当前unix时间戳和unixnano时间戳
unix时间戳与unixano时间戳
package main
import (
"fmt"
"time"
)
// MakeTimestamp returns the Unix timestamp in milliseconds
func MakeTimestamp() int64 {
return time.Now().UnixNano() / int64(time.Millisecond)
}
func main() {
i := MakeTimestamp()
fmt.Println(i)
return
}
Go内置函数
为了我们使用方便,Go提供了一些可以直接使用的函数,即内置函数。
- len:求长度,例如string、slice。
- new:分配内存,主要用于值类型。
- make:分配地址,主要用于引用类型。