Go 面试每天一篇(第 8 天)

Golang来啦 · · 2524 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

点击上方蓝色“Golang来啦”关注我哟

加个“星标”,天天 15 分钟,一起学 Go

最近开始转凉了,这两天杭州气温下降的特别明显,大家注意别着凉了。

继续我们的每日一题,昨天一共三道题,来看下。
1.
参考答案及解析:BD。知识点:字符串连接。除了以上两种连接方式,还有 strings.Join()、buffer.WriteString()等。

2.贴下原题代码:

 1const (
2    x = iota
3    _
4    y
5    z = "zz"
6    k 
7    p = iota
8)
9
10func main()  {
11    fmt.Println(x,y,z,k,p)
12}

参考答案及解析:编译通过,输出:0 2 zz zz 5。知识点:iota 的使用。给大家贴篇文章,讲的很详细
https://www.cnblogs.com/zsy/p/5370052.html

3.下面赋值正确的是()

  • A. var x = nil

  • B. var x interface{} = nil

  • C. var x string = nil

  • D. var x error = nil

参考答案及解析:BD。知识点:nil 值。nil 只能赋值给指针、chan、func、interface、map 或 slice 类型的变量。强调下 D 选项的 error 类型,它是一种内置接口类型,看下方贴出的源码就知道,所以 D 是对的。

1type error interface {
2    Error() string
3}

欢迎在留言区补充!

看下今天的题目:
1.关于init函数,下面说法正确的是()

  • A. 一个包中,可以包含多个 init 函数;

  • B. 程序编译时,先执行依赖包的 init 函数,再执行 main 包内的 init 函数;

  • C. main 包中,不能有 init 函数;

  • D. init 函数可以被其他函数调用;

2.下面这段代码输出什么以及原因?

 1func hello() []string {  
2    return nil
3}
4
5func main() {  
6    h := hello
7    if h == nil {
8        fmt.Println("nil")
9    } else {
10        fmt.Println("not nil")
11    }
12}
  • A. nil

  • B. not nil

  • C. compilation error  

3.下面这段代码能否编译通过?如果可以,输出什么?

 1func GetValue() int {
2    return 1
3}
4
5func main() {
6    i := GetValue()
7    switch i.(type) {
8    case int:
9        println("int")
10    case string:
11        println("string")
12    case interface{}:
13        println("interface")
14    default:
15        println("unknown")
16    }
17}


答案以及解析会在下一篇文章中给出,鼓励大家在留言区留下答案,抱团学习,日拱一卒,每天进步一点

ps:看完文章如果有收获,顺手花 1s 时间帮点下文末右下方的「在看」,感激!

所有学习上的成功,都只依靠两件事 -- 策略和坚持,而坚持本身就是最重要的策略!


推荐阅读:

Go 语言接口详解(一)

Go 语言接口详解(二)



如果我的文章对你有所帮助,点赞、转发都是一种支持!

给个[在看],是对四哥最大的支持



有疑问加站长微信联系(非本文作者)

本文来自:微信公众平台

感谢作者:Golang来啦

查看原文:Go 面试每天一篇(第 8 天)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2524 次点击  ∙  1 赞  
加入收藏 微博
被以下专栏收入,发现更多相似内容
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传