go 笔记

  1. 安装goland,注意版本是2024.1.1,不是2024.2.1,软件下载地址也在链接中提供了

  2. 'go' 不是内部或外部命令,也不是可运行的程序

    或批处理文件。

在 Windows 搜索栏中输入"环境变量",然后选择"编辑系统环境变量"或"编辑环境变量"。

在系统属性窗口中,点击"环境变量"按钮。

在"系统变量"区域,找到并选择"Path"变量,然后点击"编辑"。

在弹出的窗口中,点击"新建",然后输入 Go 的 bin 目录的路径,例如 C:\Go\bin。

点击"确定"保存更改。

  1. 枚举用 iota自动就依次排号变成枚举了,不用你赋值了。枚举就是变量代替正整数

    有类型的枚举的话,就不能 float64+ int了,因为有严格的类型校验,没指明类型的可以

  2. 字符串拼接可以用 +

数据不可变,它的值改变不了

字符串不可变: 意味着你不能改变字符串内部的单个字符。

变量可变: 变量本身可以被重新赋值,指向另一个字符串。

go 复制代码
var newName string
newName = name + " " + "day"
fmt.Println(newName)
newName += "s"
fmt.Println(newName)

从行为上看,newName 的内容变了,但这是因为你指向了一个全新的字符串。在 Go 中,这种操作不是修改原有字符串,而是创建了一个新的字符串,并让 newName 指向这个新的字符串。原有的字符串 "lucky day" 仍然存在于内存中,直到 Go 的垃圾收集器决定回收它。

  1. 结构体就是复合类型的聚合
    指针,如果p = &s(结构体) ,通过取地址运算符取到指针, 那么p就能像 s一样点出来所有内含的字段
  2. 数组

长度固定,存储同一类型的数据。数组是值传递的,不是引用传递,每次作为参数都是值传递,数组太大,复制会引起性能损耗。解决方案就是使用切片

复制代码
切片  【指针,len, cap容量     cap>=len】

可以动态改变长度。len就是切片里元素的个数,

切片是对底层数组的描述的意思是当改动切片中的某个值,从切片用中括号截取的切片对应的值也会改变,它从根上就变化了。

容量cap就是你把原切片切出一部分,容量就是原容量减去中括号前面切去的就是现在的容量

  1. golang是编译语言,python是脚本语言

脚本语言:适用于快速开发、自动化任务、Web开发和应用程序扩展。它们的价值在于提高开发效率和灵活性。

编译语言:适用于高性能应用、系统编程、大型企业应用和安全性要求高的场景。它们的价值在于提供高效的执行速度和对底层系统的控制。

相关推荐
week_泽2 小时前
第4课:为什么记忆能力如此重要 - 学习笔记_4
人工智能·笔记·学习·ai agent
week_泽3 小时前
第6课:如何管理短期记忆和长期记忆 - 学习笔记_6
人工智能·笔记·学习·ai agent
崎岖Qiu3 小时前
【OS笔记39】:设备管理 - 数据传送控制方式
笔记·操作系统·dma·os
瑾修3 小时前
golang查找cpu过高的函数
开发语言·后端·golang
kkkAloha3 小时前
JS笔记汇总
开发语言·javascript·笔记
map_vis_3d4 小时前
JSAPIThree 加载简单点图层学习笔记:SimplePoint 散点可视化
笔记·学习·信息可视化·mapvthree·jsapithree·simplepoint·点图层
蓝田生玉1239 小时前
BEVFormer论文阅读笔记
论文阅读·笔记
西瓜堆9 小时前
提示词工程学习笔记: 工程技术行业提示词推荐
笔记·学习
LawrenceLan9 小时前
Flutter 零基础入门(十一):空安全(Null Safety)基础
开发语言·flutter·dart
txinyu的博客10 小时前
解析业务层的key冲突问题
开发语言·c++·分布式