Go 語言是一種新興的程式語言,它的高效性和簡潔性已經吸引了越來越多的開發者。在編寫程式時,操作時間是一個常見的需求,因此 Go 語言提供了許多與時間處理相關的函數。本文將介紹一些常用的時間處理函數。
time.Now() 函數傳回目前的時間。此函數傳回的時間是一個 time.Time 類型的值。例如:
package main import ( "fmt" "time" ) func main() { now := time.Now() fmt.Println(now) }
輸出:2021-08-20 11:12:48.693123 0800 CST m= 0.000102671
time .Parse() 函數將字串解析為一個time.Time 類型的值。格式化字串必須遵循特定的規則,以指示要解析的字串所代表的時間。例如:
package main import ( "fmt" "time" ) func main() { layout := "2006-01-02 15:04:05" str := "2021-08-20 10:10:10" t, err := time.Parse(layout, str) if err != nil { fmt.Println(err) } else { fmt.Println(t) } }
輸出:2021-08-20 10:10:10 0000 UTC
#time.Unix( ) 函數將Unix 時間戳記轉換為一個time.Time 類型的值。 Unix 時間戳記是自 1970 年 1 月 1 日 00:00:00 UTC 起經過的秒數。例如:
package main import ( "fmt" "time" ) func main() { unixTime := int64(1629488400) t := time.Unix(unixTime, 0) fmt.Println(t) }
輸出:2021-08-20 10:20:00 0000 UTC
time.Duration( ) 函數表示時間間隔,以奈秒為單位。時間間隔是一個 time.Duration 類型的值。例如:
package main import ( "fmt" "time" ) func main() { t1 := time.Now() time.Sleep(time.Second) t2 := time.Now() duration := t2.Sub(t1) fmt.Println(duration) }
輸出:1.000743896s
package main import ( "fmt" "time" ) func main() { fmt.Println("start") <-time.After(time.Second * 3) fmt.Println("end") }輸出:start
end
以上是Go 語言中與時間處理相關的函數有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!