练习: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 (p IPAddr) String() string {
return fmt.Sprintf("%d.%d.%d.%d", p[0], p[1], p[2], p[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)
}
}
本文介绍如何在Go语言中为自定义类型IPAddr实现fmt.Stringer接口,以便能够以点分十进制格式输出IPv4地址。通过具体代码示例展示了如何将一个包含四个字节的切片转换成标准的IP地址字符串。
4118

被折叠的 条评论
为什么被折叠?



