Go 将字节数组转换为字符串数组
在下面的方法中,我试图通过向字符串数组追加字节来重新定义IPAddr类型上的string方法Go 将字节数组转换为字符串数组,go,Go,在下面的方法中,我试图通过向字符串数组追加字节来重新定义IPAddr类型上的string方法 type IPAddr [4]byte func (ip IPAddr) String() string { var s []string for _, i := range ip { s = append(s, i) } return fmt.Sprintf(strings.Join(s, ".")) } 无法将i(类型字节)用作追加中的类型字符串
type IPAddr [4]byte
func (ip IPAddr) String() string {
var s []string
for _, i := range ip {
s = append(s, i)
}
return fmt.Sprintf(strings.Join(s, "."))
}
无法将i(类型字节)用作追加中的类型字符串
由于您的类型是一个长度较小的数组,因此我建议只构建字符串,而不在元素上进行排列:
func (ip IPAddr) String() string {
return fmt.Sprintf("%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3])
}
如果要通过加入字符串片段来实现解决方案,则需要使用strconv
包将字节转换为十进制表示:
func (ip IPAddr) String() string {
s := make([]string, 0, len(ip))
for _, i := range ip {
s = append(s, strconv.Itoa(int(i)))
}
return strings.Join(s, ".")
}
错误很明显,伊姆霍。“你不明白其中的哪一部分?”比芬,我明白这个错误。但是,我想知道如何将字节转换为stringYes,这可能是一个选项。但我想知道,如何将字节数组转换成字符串数组