关于Golang的Time

有可能会被问到:“为什么你会这么想呢?”

现在时刻存入变量后,经过几秒后时间会变吗? 总结而言,如果执行now := time.Now(),那么存储在变量now中的时间不会随时间推移而改变。

以下是验证代码。

package main

import (
    "fmt"
    "time"
)

func main() {
    now := time.Now()
    // 変数
    fmt.Println("before    :", now.Format("2006-01-02T15:04:05Z07:00"))
    // Timeオブジェクト
    fmt.Println("beforeNow :", time.Now().Format("2006-01-02T15:04:05Z07:00"))
    fmt.Println("2秒待ちます")
    time.Sleep(time.Second * 2)
    // 変数
    fmt.Println("after    :", now.Format("2006-01-02T15:04:05Z07:00"))
    // Timeオブジェクト
    fmt.Println("afterNow :", time.Now().Format("2006-01-02T15:04:05Z07:00"))

}
$ go run main.go
before    : 2021-11-02T12:14:00+09:00
beforeNow : 2021-11-02T12:14:00+09:00
2秒待ちます
after    : 2021-11-02T12:14:00+09:00
afterNow : 2021-11-02T12:14:02+09:00

只有展示了物体的afterNow在继续前进。