@kyanny's blog

My thoughts, my life. Views/opinions are my own.

Go の time.Second について

Constants のところに定数はまとめて表示される。

time.Second の型は time.Duration で、 time.Duration の実体は int64 。

fmt.Println(time.Second) すると 1s と表示される。 s はどこからきたかというと、 Stringer インタフェースの仕組みによる。

time.Duration 型は String() string メソッドを実装している。その中で 0s とか 1m0s みたいな文字列にしている。

余談。変数の型を調べるには reflect.TypeOf を使う。