go每日一题

收录了 9 篇文章 · 7 人关注

  • Go 面试每天一篇(第 9 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Go杭州转凉也太快了,早晨起来都不敢光膀子,连着打了好几个喷嚏.. 你那天气转凉了吗?看下昨天的题目解析:1.参考答案及解析:AB。关于 init() 函数有几个需要注意的地方:init() 函数是用于程序执行前做包的初始化的函数,比如初始化包里的变量等;一个包可以出线多个 init() 函数,一个源文件也可以包含多个 init() 函数;同一个包中多个 init() 函数的执行顺序没有明确定义,但是不同包的init...

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

    点击上方蓝色“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) 910func main(...

  • Go 面试每天一篇(第 7 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Go昨天的题目,看下昨天的留言区,已经有同学回答出来了,还是实操,很好的习惯!这里还是补充下答案:1.参考答案及解析:AC。& 取址运算符,* 指针解引用。2.方便查看,贴下代码: 1package main 2 3import "fmt" 4 5type MyInt1 int 6type MyInt2 = int 7 8func main() { 9 var i int =010 var i1 MyInt1 = i...

  • Go 面试每天一篇(第 6 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Go给大家推荐一首歌,个人感觉不错,适合边听边码,静静的!言归正传,昨天的题目比较简单,但答案很丰富,值的一看。参考答案及解析:编译不通过 invalid operation: sm1 == sm2这道题目考的是结构体的比较,有几个需要注意的地方:结构体只能比较是否相等,但是不能比较大小。相同类型的结构体才能够进行比较,结构体是否相同不但与属性类型有关,还与属性顺序相关,sn3 与 sn1 就是不同的结构体;1 sn...

  • Go 面试每天一篇(第 5 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Go从昨天的答题留言来看,@十二 同学三道题目都答对了,特别棒!鼓励其他同学参与答题,加油!公布下昨天题目的答案,题目见昨天的文章。1.参考答案及解析:不能通过编译,new([]int) 之后的 list 是一个 *[]int 类型的指针,不能对指针执行 append 操作。可以使用 make() 初始化之后再用。同样的,map 和 channel 建议使用 make() 或字面量的方式初始化,不要用 new() 。...

  • Go 面试每天一篇(第 4 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Go今天周一,注满活力,加油!继续我们的每日一篇,题目可以看上一篇文章。下面给出上一篇文章的答案:1.两段代码分别输出:1[0 0 0 0 0 1 2 3]2[1 2 3 4]参考解析:这道题考的是使用 append 向 slice 添加元素,第一段代码常见的错误是 [1 2 3],需要注意。2.参考答案:第二个返回值没有命名。参考解析:在函数有多个返回值时,只要有一个返回值有命名,其他的也必须命名。如果有多个返回值...

  • Go 面试每天一篇(第 3 天)

    点击上方蓝色“Golang来啦”关注我哟加个“星标”,天天 15 分钟,一起学 Gops:如果题目相对容易,一天一道题目的话,更新有点缓慢,所以以后一篇文章里面会加题,最多 3 道。这两天是周末,大家都好好休息,但也要抽出 15 分钟来做题呀,争取每天都进步一点!具体题目可以看上一篇文章,这道题目比较简单,只要踩过一次坑,就不会踩第二次了,如果有就应该面壁思过 15 分钟了 ^_^直接给答案:10 -> 321 -> 332 -> 343 -> 3参考解析:这是新手常会犯的错误写法,for ra...

  • Go 面试每日一题(2)

    每天 15 分钟,学好 Go 语言从上篇文章留言区的回答来看,大家对 defer 先进后出的特性都是了解的,没问题,但如果结合 panic 语句就可能会搞不清到底是 defer 先执行还是 panic 执行。看下答案,输出:1打印后2打印中3打印前4panic: 触发异常参考解析:defer 的执行顺序是后进先出。当出现 panic 语句的时候,会先按照 defer 的后进先出的顺序执行,最后才会执行panic。欢迎在留言区补充!来看下今天的题目:下面这段代码输出什么,说明原因。 1func m...

  • Go 面试每日一题(1)

    每天一道面试题,喂饱你下面这段代码输出的内容 1package main 2 3import ( 4 "fmt" 5) 6 7func main() { 8 defer_call() 9}1011func defer_call() {12 defer func() { fmt.Println("打印前") }()13 defer func() { fmt.Println("打印中") }()14 defer func() { fmt.Println("打印后") }()1516 panic("触...