Goのジェネリクス

Go の interface{} → any

Go 1.18 でジェネリックス(Generics)が導入され、それに合わせて any が追加された。

any は新しい型ではなく、interface{} のエイリアスである。

type any = interface{}

そのため、以下は完全に同じ意味になる。

map[string]interface{}
map[string]any

現在は Go の公式コードやコミュニティでも any が推奨されることが多く、 モダンな Go コードでは interface{} より any がよく使われるので、覚えておきましょう。

No.2747
06/09 09:28

edit