Go面试八股

  1. =赋值 :=定义
  2. *取值 指针替代值传入函数
  3. Goroutine是用户级轻量线程,是线程的最小单位,前面加go实现,携程以2k或4k的栈启动,当栈空间不够时会自动伸缩,因此可以轻而易举实现成千上万个携程同时启动
  4. +遍历字符串,开辟新空间存储两个字符串
  5. fmt.sprintf 使用了接口参数,必须要通过反射获取值,会有性能损耗
  6. Strings.Builder 使用writeString()进行拼接,内部使用指针+切片,同时String()返回拼接后的字符串,把\[\]byte转为string,避免拷贝变量
  7. byte.Buffer是一个缓存byte类型的缓冲器,底层是\[\]byte切片,通用可读写
  8. strings.join基于strings.Builder实现,输入\[\]string,分配固定内存,减少内存分配,更高效
相关推荐
滕州市燕猫虎计算机科技工作室个体工商户6 分钟前
IDEA:Command line is too long
java·ide·intellij-idea
彧azz35 分钟前
Linux 网络编程学习总结
linux·网络·笔记·学习·面试
步行cgn37 分钟前
Spring p 命名空间注入详解
java·前端·spring
YatHinLay41 分钟前
MyBatis 流式查询实战:ResultHandler 处理海量数据
java
天天被压力1 小时前
【跨市场数据实战 #08】可转债折价机会怎么筛:3个接口抓比价、列表和实时盘口
java·人工智能·python
张某布响丸辣2 小时前
附件下载的安全边界:路径白名单、NAS 哨兵文件与 Redis Lua 一次性令牌
java·redis·redis lua·nas哨兵
默_笙2 小时前
💫 闭包是个背包:拆解小米前端面试题里的三道"闭包陷阱"
前端·javascript·面试
五彩小白2 小时前
GO语言装饰器语法
golang
YatHinLay2 小时前
Spring Boot + Calcite 实现跨库查询
java
酷炫码神3 小时前
MosMos 创意效果与能力边界展示
java