我可以定义如何将 using 转换为字符串String()应用于我的自定义类型吗myint?以及如何做到这一点?
我期望定义该方法String()就足够了,因为它被使用,fmt.Println()但显然不是string()。这纯粹是一个理论问题,因为我正在学习 Go,并对这种行为感到惊讶。
下面是一个显示该行为的示例:
package main
import (
"fmt"
)
type myint int
func (m myint) String() string {
return fmt.Sprintf("%d", m)
}
func main() {
var val myint = 42
mystr := "Testing: " + string(val)
fmt.Println(mystr, val)
}
哪个输出:
测试:* 42
但我期待的是:
测试:42 42
四季花海
相关分类