暂时废弃,未补充。
收集碰到的一些题目:
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 27 28 29 30 31 32 33 34 35
| package main
import ( "fmt" )
type People interface { Show() }
type Student struct{}
func (stu *Student) Show() {
}
func live() People { var stu *Student if stu == nil { fmt.Println("123") } return stu }
func main() { if live() == nil { fmt.Println("AAAAAAA") } else { fmt.Println("BBBBBBB") } }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| func main() { i := GetValue()
switch i.(type) { case int: println("int") case string: println("string") case interface{}: println("interface") default: println("unknown") }
}
func GetValue() int { return 1 }
|
是否可以编译通过?如果通过,输出什么?
list
类型是*[]int
,append要求的第一个参数是slice []Type
。
编译会失败 59.175.182.99
1 2 3 4 5
| func main() { list := new([]int) list = append(list, 1) fmt.Println(list) }
|
可以编译通过,打印0 1 zz zz 4
。
1 2 3 4 5 6 7 8 9 10 11
| const ( x = iota y z = "zz" k p = iota )
func main() { fmt.Println(x,y,z,k,p) }
|
本文标题:golang面试题
文章作者:小师
发布时间:2019-04-16
最后更新:2022-05-04
原始链接:chunlife.top/2019/04/16/golang面试题/
版权声明:本站所有文章均采用知识共享署名4.0国际许可协议进行许可