类型断言2

题目:

下面代码输出什么?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
type A interface {
ShowA() int
}

type B interface {
ShowB() int
}

type Work struct {
i int
}

func (w Work) ShowA() int {
return w.i + 10
}

func (w Work) ShowB() int {
return w.i + 20
}

func main() {
var a A = Work{3}
s := a.(Work)
fmt.Println(s.ShowA())
fmt.Println(s.ShowB())
}
  • A. 13 23
  • B. compilation error

答案解析:

参考答案及解析:A。

知识点:类型断言。很简单,不多解释。


类型断言2
http://example.com/2023/07/10/Go每日一题/类型断言2/
作者
Feng Tao
发布于
2023年7月10日
更新于
2023年7月10日
许可协议