ホームページ >バックエンド開発 >Golang >Go言語で時刻が前日であるかどうかを判断するにはどうすればよいですか?

Go言語で時刻が前日であるかどうかを判断するにはどうすればよいですか?

WBOY
WBOYオリジナル
2024-03-24 11:54:04540ブラウズ

Go言語で時刻が前日であるかどうかを判断するにはどうすればよいですか?

Go 言語で時刻が前日であるかどうかを判断するにはどうすればよいですか?

Go言語では日時の操作や判断が必要になることがよくあります。場合によっては、特定の時刻が前日であるかどうかを判断する必要がありますが、これは一部の需要シナリオでは非常に一般的です。この記事ではGo言語で前日かどうかを判定する方法と具体的なコード例を紹介します。

まず、時間の操作を容易にするために、Go 言語の標準ライブラリに「time」パッケージをインポートする必要があります。コードは次のとおりです。

import (
    "time"
)

次に、time.Time 型のパラメーターを受け入れ、その時刻が前日であるかどうかを判断する関数を作成する必要があります。以下は完全なコード例です:

package main

import (
    "fmt"
    "time"
)

func isYesterday(t time.Time) bool {
    now := time.Now()
    yesterday := now.AddDate(0, 0, -1)

    year, month, day := t.Date()
    yearNow, monthNow, dayNow := yesterday.Date()

    if year == yearNow && month == monthNow && day == dayNow {
        return true
    }

    return false
}

func main() {
    t := time.Date(2022, time.September, 21, 0, 0, 0, 0, time.UTC)
    if isYesterday(t) {
        fmt.Println("给定的时间是昨天!")
    } else {
        fmt.Println("给定的时间不是昨天!")
    }
}

上記のコードでは、isYesterday という名前の関数を定義します。この関数は、time.Time 型のパラメーター t を受け入れ、指定された時刻が時刻であるかどうかを示すブール値を返します。前日。まず現在の時刻を取得し、次に昨日から今までの昨日の時刻を取得します。AddDate(0, 0, -1)。次に、パラメータ t と昨日の年、月、日を比較し、等しい場合は前日であることを意味して true を返し、そうでない場合は false を返します。

main 関数では、時刻 t を作成し、isYesterday 関数を呼び出してその時刻が前日であるかどうかを判断し、結果を出力します。

概要: この記事の紹介とコード例を通じて、Go 言語で時刻が前日であるかどうかを判断する方法を理解できるはずです。お役に立てれば!

以上がGo言語で時刻が前日であるかどうかを判断するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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