JSONのデコード時に、各オブジェクトの構造体を明示的に記述しましたので、親構造体の個々のオブジェクトに対してStringerインタフェースを実装できます。タイプリテラルで定義されたタイプの構造体フィールドのメソッド
type Data struct {
Records []Record
}
type Record struct {
ID int
Value string
}
func (r Record) String() string {
return fmt.Sprintf("{ID:%d Value:%s}", r.ID, r.Value)
}
私は最近、匿名の構造体でネストすることが可能であることを学びました。
type Data struct {
Records []struct {
ID int
Value string
}
}
しかし、それは、構造体のメンバーに、匿名構造体、特にメンバーのメソッドを定義することが可能である。この方法は、復号化されるデータの構造を定義するためのはるかに簡潔なのですか?最初のコードブロックのStringerインターフェイスの実装と似ています。