2022-11-02:以下 go 语言代码输出什么?A:编译错误;B:apple;C:ant;D:panic。 package main import “fmt“ func main() {
2022-11-02:以下 go 语言代码输出什么?A:编译错误;B:apple;C:ant;D:panic。
复制代码
答案选 C。正常情况下 map 字面量如果声明相同的 key 会编译错误,但是 pairs 第一层是切片不是数组,编译器不会做编译时检查,因此会通过编译,然后字面量声明 map 会按照 key 顺序依次插入,因此最后一次对 key “a” 的写入就是最终结果,而最后一次写入是 ant,最后的结果就是 ant。
版权声明: 本文为 InfoQ 作者【福大大架构师每日一题】的原创文章。
原文链接:【http://xie.infoq.cn/article/3f801642f400b86e3948ac8ac】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论