ホームページ  >  記事  >  バックエンド開発  >  Go言語の時間処理に関する関数にはどのようなものがあるのでしょうか?

Go言語の時間処理に関する関数にはどのようなものがあるのでしょうか?

王林
王林オリジナル
2023-06-09 19:51:131245ブラウズ

Go 言語は新興のプログラミング言語であり、その効率性とシンプルさにより、ますます多くの開発者を魅了しています。時間の操作はプログラムを作成するときによく必要となるため、Go 言語には時間処理に関連する関数が多数用意されています。この記事では、よく使用される時間処理関数をいくつか紹介します。

  1. time.Now()

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

  1. time.Parse()

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

  1. time.Unix()

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

  1. time.Duration()

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

  1. time.After()

time.After() 関数は一定時間待機します。そしてチャンネルを返します。チャネルは、指定された時間の後に値を受け取ります。例:

package main

import (
    "fmt"
    "time"
)

func main() {
    fmt.Println("start")
    <-time.After(time.Second * 3)
    fmt.Println("end")
}

出力:

start
end

上記は、Go 言語の時間処理に関連するいくつかの関数の紹介です。実際の開発では、特定のニーズに応じて他の時間処理関数も使用する必要があります。使用する際には各関数の役割と使い方を理解し、時間処理関数を使いこなしてコード効率を向上させる必要があります。

以上がGo言語の時間処理に関する関数にはどのようなものがあるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。