Go指南学习笔记十

Stringers

普遍存在的接口是fmt包中定义的Stringer

1
2
3
type Stringer inferface {
String() string
}

Stringer是一个可以用字符串描述自己的类型。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main
import (
"fmt"
)
type Person struct {
Name string
Age int
}
func (p Person) String() string {
return fmt.Sprintf("%v (%v years)", p.Name, p.Age)
}
func main() {
a := Person{"Dent", 42}
z := Person{"Foo", 90}
fmt.Println(a, z) // 输出Dent (42 years) Foo (90 years)
}
如果您觉得对您有帮助,谢谢您的赞赏!