Goで月をintに変換する質問

Goで月をintに変換する質問

状況:

Second()などの時間関数を呼び出すとYear()、 tye の結果が返されますint。しかし、 を呼び出すとMonth()、 type の結果が返されますMonth

オンラインドキュメントで次のことが分かりました:

type Month int
...
func (m Month) String() string

..でも、よく分かりません。

問題:

私のコードには次のエラーがありますmない:のint:

無効な操作: m / time.Month(10) + offset(time.Month と int の型が一致しません)

質問:

intから取得するにはどうすればいいですかMonth()?

ベストアンサー1

考慮する点:

var m time.Month

mのタイプ基礎となるタイプは なのでint変換されたint

var i int = int(m) // normally written as 'i := int(m)'

余談ですが、質問には除算「m / time.Month(10)」が表示されています。これは、何かを計算したいのでなければバグかもしれません。デカマンス価値 ;-)

おすすめ記事