围棋之旅
练习:纵梁
使
IPAddr类型工具fmt.Stringer将地址打印为点分四边形。例如,
IPAddr{1, 2, 3, 4}应打印为"1.2.3.4“。package mainimport "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: %vn", n, a) }}
有没有隐式转换
[]string到
[]interface{}。见转换中的围棋语言的编程规范。您需要提供显式转换。例如,package mainimport "fmt"type IPAddr [4]byte// A "String() string" method for IPAddr.func (a IPAddr) String() string { return fmt.Sprintf("%d.%d.%d.%d", a[0], a[1], a[2], a[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: %vn", n, a) }}输出:
loopback: 127.0.0.1googleDNS: 8.8.8.8



