![](https://img-blog.csdnimg.cn/20210105104841426.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
golang面试题
自己面试题目的更新
朱鑫烨
这个作者很懒,什么都没留下…
展开
-
golang面试题第十一天
第十一天1.关于 cap() 函数的适用类型,下面说法正确的是() A. array B. slice C. map D. channel 参考答案及解析:ABD。知识点:cap(),cap() 函数不适用 map。2.下面这段代码输出什么?func main() { var i interface{} if i == nil { fmt.Println("nil") return }原创 2021-01-08 12:30:25 · 181 阅读 · 0 评论 -
golang面试题第十天
第十天1.下面这段代码输出什么?func main() { a := 5 b := 8.1 fmt.Println(a + b)} A.13.1 B.13 C.compilation error 自己解析:C 一个是int 一个是float类型 类型不同不能相加参考答案及解析:C。a 的类型是 int,b 的类型是 float,两个不同类型的数值不能相加,编译报错。2.下面这段代码输出什么?package main...原创 2021-01-08 12:23:05 · 179 阅读 · 0 评论 -
golang面试题第九天
第九天1.关于channel,下面语法正确的是() A. var ch chan int B. ch := make(chan int) C. <- ch D. ch <- 自己解析:ABC A 是定义类型 B是初始化通道 C是读取通道 D是存入通道 但是没有值参考答案及解析:ABC。A、B都是声明 channel;C 读取 channel;写 channel 是必须带上值,所以 D 错误。2.下面这段代码输出什么?...原创 2021-01-07 17:00:31 · 200 阅读 · 0 评论 -
goland面试题第八天
第八天1.关于init函数,下面说法正确的是()A. 一个包中,可以包含多个 init 函数; B. 程序编译时,先执行依赖包的 init 函数,再执行 main 包内的 init 函数; C. main 包中,不能有 init 函数; D. init 函数可以被其他函数调用;自己解析:B init函数是可以在main函数里面调用的 (我错误的以为init函数只能有一个init函数 应该是一个.go文件里面只能有一个init函数)1.参考答案及解析:AB。关于 init() 函数...原创 2021-01-07 16:37:43 · 263 阅读 · 0 评论 -
goland面试题第七天
1.关于字符串连接,下面语法正确的是?A. str := ‘abc’ + ‘123’ B. str := “abc” + “123” C str := ‘123’ + “abc” D. fmt.Sprintf(“abc%d”, 123)自己答案:字符串连接 不能用' ' 要用 "" AC都有' ' 所以选择BD参考答案及解析:BD。知识点:字符串连接。除了以上两种连接方式,还有 strings.Join()、buffer.WriteString()等。2.下面这段代码能否编译通过?...原创 2021-01-06 12:09:13 · 1552 阅读 · 0 评论 -
golang面试题第六天
第六天1.通过指针变量 p 访问其成员变量 name,有哪几种方式?A.p.name B.(&p).name C.(*p).name D.p->name自己答案:ac a是指针简写 b是取地址在取成员变量 取不到 c是a的完整写 d 是通道的写法 所以是ac参考答案及解析:AC。& 取址运算符,* 指针解引用。2.下面这段代码能否通过编译?如果通过,输出什么?package mainimport "fmt"type MyInt1 ...原创 2021-01-06 11:30:45 · 289 阅读 · 0 评论 -
golang面试题第五天
第五天1.下面这段代码能否通过编译?不能的话,原因是什么?如果通过,输出什么?func main() { sn1 := struct { age int name string }{age: 11, name: "qq"} sn2 := struct { age int name string }{age: 11, name: "qq"} if sn1 == sn2 { f原创 2021-01-05 11:30:21 · 178 阅读 · 0 评论 -
goland面试题第4天
第四天面试题整理1.下面这段代码能否通过编译,不能的话原因是什么;如果能,输出什么。func main() { list := new([]int) list = append(list, 1) fmt.Println(list)}参考答案及解析:不能通过编译,new([]int) 之后的 list 是一个*[]int类型的指针,不能对指针执行 append 操作。可以使用 make() 初始化之后再用。同样的,map 和 channel 建议使用 make() ..原创 2021-01-05 11:01:13 · 1291 阅读 · 0 评论