【GoLang】切片的面试知识点

nil切片 和 空切片

nil切片是只声明但未初始化,没有分配底层数组的内存空间,

空切片是初始化了的,有分配数组内存,只是数组内没有元素。

二者都可以正常扩容、遍历。不会报错。

append 如何添加切片

append 可以增加切片,通过在切片后面加上...,就可以进行添加。

如何比较两个切片是否相等,判断依据是什么

判断依据:1. 切片长度; 2. 切片指向数组的所有元素

只要两个切片的长度相等并且指向数组内所有元素及顺序都相等,那么两个切片就相等。两个数组可以不是同一个数组。

判断函数:

  1. reflect.DeepEqual()

  2. 自定义函数

使用[a:b]对切片进行截取

使用[a:b]对切片进行截取得到的新切片,新切片的长度是b-a ,容量是底层数组长度-a。新切片与旧切片共用一个底层数组

相关推荐
天天扭码19 分钟前
很全面的前端面试题——CSS篇(下)
前端·css·面试
Java中文社群23 分钟前
面试官:谈谈你AI项目的具体实现?
java·后端·面试
然我1 小时前
react-router-dom 完全指南:从零实现动态路由与嵌套布局
前端·react.js·面试
前端拿破轮2 小时前
刷了这么久LeetCode了,挑战一道hard。。。
前端·javascript·面试
多啦C梦a2 小时前
《设计模式?》前端单例模式保姆级教程:用 Class + 闭包各封装一个 LocalStorage 单例,一次学会!
前端·javascript·面试
charlie1145141912 小时前
我的Qt八股文笔记2:Qt并发编程方案对比与QPointer,智能指针方案
笔记·qt·面试·刷题·并发编程·异步
顾林海3 小时前
Android深入解析 so 文件体积优化
android·面试·性能优化
倔强青铜三4 小时前
苦练Python第20天:Python官方钦定的代码风格指南
人工智能·python·面试
倔强青铜三5 小时前
苦练Python第19天:断言与自定义异常
人工智能·python·面试
_一条咸鱼_5 小时前
LangChain正则表达式(19)
人工智能·面试·langchain