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开发和应用程序扩展。它们的价值在于提高开发效率和灵活性。

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

相关推荐
码兄科技19 小时前
Java AI智能体开发实战:从零构建智能对话系统指南
java·开发语言·人工智能
问君能有几多愁~20 小时前
C++ 数据结构复习笔记
数据结构·c++·笔记
Drone_xjw20 小时前
从 GDB 到 CDB:C/C++ 程序调试的两把“手术刀”
c语言·开发语言·c++
r_oo_ki_e_20 小时前
Java Map 集合学习笔记
java·笔记·学习
SL-staff21 小时前
智慧园区2000+设备统一管理:JVS-IoT如何降低运维成本40%
java·开发语言·物联网·智慧园区·设备管理·运维优化·jvs-iot
xurime21 小时前
Excelize 开源十周年,发布 2.11.0 版本
golang·开源·github·excel·导出·导入·excelize·基础库
liuyicenysabel1 天前
大模型学习笔记 · 第八篇 · 进阶:偏好对齐与多卡训练
人工智能·笔记·学习
2zcode1 天前
基于MATLAB图像处理的饮料瓶灌装液位检测系统设计与实现
开发语言·图像处理·matlab
必须得开心呀1 天前
QT解决中文乱码问题
开发语言·qt
这不小天嘛1 天前
JAVA八股——redis篇
java·开发语言·redis