博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go 面试每天一篇(第 67 天)
阅读量:2287 次
发布时间:2019-05-09

本文共 1522 字,大约阅读时间需要 5 分钟。

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

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

1.下面的代码输出什么?

1type T struct { 2    n int 3} 4 5func main() { 6    ts := [2]T{} 7    for i, t := range ts { 8        switch i { 9        case 0:10            t.n = 311            ts[1].n = 912        case 1:13            fmt.Print(t.n, " ")14        }15    }16    fmt.Print(ts)17}

参考答案及解析:0 [{0} {9}]。知识点:for-range 循环数组。此时使用的是数组 ts 的副本,所以 t.n = 3 的赋值操作不会影响原数组。

2.下面的代码输出什么?

1type T struct { 2    n int 3} 4 5func main() { 6    ts := [2]T{} 7    for i, t := range &ts { 8        switch i { 9        case 0:10            t.n = 311            ts[1].n = 912        case 1:13            fmt.Print(t.n, " ")14        }15    }16    fmt.Print(ts)17}

参考答案及解析:9 [{0} {9}]。知识点:for-range 数组指针。for-range 循环中的循环变量 t 是原数组元素的副本。如果数组元素是结构体值,则副本的字段和原数组字段是两个不同的值。

均引自《Go语言101》

解析若有不妥之处,欢迎在留言区交流、指正!

看下今天的题目:

1type T struct { 2    n int 3} 4 5func main() { 6    ts := [2]T{} 7    for i := range ts[:] { 8        switch i { 9        case 0:10            ts[1].n = 911        case 1:12            fmt.Print(ts[i].n, " ")13        }14    }15    fmt.Print(ts)16}

2.下面的代码输出什么?

1type T struct { 2    n int 3} 4 5func main() { 6    ts := [2]T{} 7    for i := range ts[:] { 8        switch t := &ts[i]; i { 9        case 0:10            t.n = 3;11            ts[1].n = 912        case 1:13            fmt.Print(t.n, " ")14        }15    }16    fmt.Print(ts)17}

引自《Go语言101》

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

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

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

推荐阅读:

转载地址:http://fzfnb.baihongyu.com/

你可能感兴趣的文章
sersync+rsync数据同步
查看>>
使用com.aspose.words将word模板转为PDF文件时乱码解决方法
查看>>
Linux发送邮件
查看>>
YUM安装PHP5.6
查看>>
YUM源安装MySQL5.7
查看>>
Tomcat日志切割cronolog
查看>>
glibc-2.14安装
查看>>
升级openssl zlib版本 安装nginx
查看>>
ab压力测试
查看>>
SVN指定端口启动
查看>>
网站访问速度一般检查参数
查看>>
编译安装过程
查看>>
HTTP常见返回码信息
查看>>
WEB集群session处理方案
查看>>
JDK命令行(jps、jstat、jinfo、jmap、jhat、jstack、jstatd、hprof)与JConsole
查看>>
JAVA 对象访问: 句柄和指针
查看>>
秒杀系统优化思路
查看>>
dubbo 报错:java.lang.NoClassDefFoundError: org/I0Itec/zkclient/exception/ZkNoNodeException
查看>>
logback的使用和logback.xml详解
查看>>
Linux 快捷键
查看>>