Go面试题11
1: 关于cap()
函数的适用类型,下面说法正确的是()
- A.
array
- B.
slice
- C.
map
- D.
channel
2: 下面这段代码输出什么?
package main
import "fmt"
func main() {
var i interface{}
if i == nil {
fmt.Println("nil")
return
}
fmt.Println("not nil")
}
- A.
nil
- B.
not nil
- C.
compilation error
3: 下面这段代码输出什么?
package main
import "fmt"
func main() {
s := make(map[string]int)
delete(s, "h")
fmt.Println(s["h"])
}
- A.
runtime panic
- B.
0
- C.
compilation error
参考答案及解析
1: 答案及解析: ABD
. 知识点: cap()
, cap()
函数不使用map
.
2: 答案及解析: A
. 当且仅当接口的动态值和动态类型都为nil
时,接口类型值才为nil
.
3: 答案及解析: B
. 删除map
不存在的键值对时, 不会报错, 相当于没有任何作用; 获取不存在的键值对时,返回值类型对应的零值,所以返回0
;
「真诚赞赏,手留余香」
真诚赞赏,手留余香
使用微信扫描二维码完成支付