练习:Stringers
让 IPAddr
类型实现 fmt.Stringer
以便用点分格式输出地址。
例如,IPAddr{1, 2, 3, 4}
应当输出 "1.2.3.4"
。
下面是给出的参考模板
package main import "fmt" type IPAddr [4]byte // TODO: Add a "String() string" method to IPAddr. func main() { addrs := map[string]IPAddr{ "loopback": {127, 0, 0, 1}, "googleDNS": {8, 8, 8, 8}, } for n, a := range addrs { fmt.Printf("%v: %v\n", n, a) } }
下面是实现的代码
package main import "fmt" type IPAddr [4]byte func (v IPAddr) String() string{ return fmt.Sprintf("%v.%v.%v.%v", v[0],v[1],v[2],v[3]) } func main(){ addrs := map[string]IPAddr{ "loopback": {127,0,0,1}, "googleDNS": {8,8,8,8}, } for n, a := range addrs{ fmt.Printf("%v:%v\n", n, a) } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
有疑问加站长微信联系(非本文作者)