写点什么

2022-10-28:以下 go 语言代码输出什么?A:false false;B:true false;C:true true;D:false true。 package main import “f

  • 2022-10-28
    北京
  • 本文字数:237 字

    阅读完需:约 1 分钟

2022-10-28:以下go语言代码输出什么?A:false false;B:true false;C:true true;D:false true。 package main import “f

2022-10-28:以下 go 语言代码输出什么?A:false false;B:true false;C:true true;D:false true。


package main
import "fmt"
func main() { s := []string{"A", "B", "C"}
t := s[:1] fmt.Println(&s[0] == &t[0])
u := append(s[:1], s[2:]...) fmt.Println(&s[0] == &u[0])}
复制代码


答案选 C。这里的关键点是 append(s[:1], s[2:]...) 会不会导致扩容。s[:1] 相当于 s[:1:3],即容量是也是 3,因此 append 一个元素(s[2:]...)并不会导致扩容,因此第一个元素还是原来 s[0] 的元素。



发布于: 刚刚阅读数: 3
用户头像

还未添加个人签名 2021-02-15 加入

还未添加个人简介

评论

发布
暂无评论
2022-10-28:以下go语言代码输出什么?A:false false;B:true false;C:true true;D:false true。 package main import “f_golang_福大大架构师每日一题_InfoQ写作社区