golang基础快过
说明:
本文意在帮助有golang基础的同学快速复习,而不是讲解基础知识.
思维导图:
变量:
- 变量的声明有三种方式,只需要记住短声明只能用于函数当中,不能用于声明全局变量即可.
- 赋值的时候于python同样支持多重赋值(所以写一个交换两个数的算法实现应该不会让你用golang写/dog).
- 可赋值性指的是golang不支持隐式类型转化,除了两个特殊值: nil和interface{}.只要是引用类型的值都可以用nil去赋值(包括map和slice),而任何类型的值都可以赋值给interface{}(空接口).
- new则是返回一个某个类型的零值指针,但是他是一个预函数,并不是关键字--所以可以用new作为你的标识符,只是不建议.
- 声明周期的结束取决于其所处的程序块什么时候结束.如果是局部变量,就是当程序执行到距离这个变量声明最近的大括号之外的地方的时候,这个变量死亡.比如for循环结束,函数结束等.
常量:
1 itoa就像是一个从0开始递增的变量,你甚至可以对其进行简单的运算,而声明的后续常量会自动递推这个计算
2. 常量可以指定特定的类型,也可以不指定类型,而且这些无类型的常量可以于普通类型的变量直接进行计算.
类型:
- golang的数据类型于其他语言大同小异,只是没有double类型
- 字符串可以使用反引号来表示原字符串,可以换行,忽略转义字符.
函数:
- golang的返回值可以是多个,但是建议是多个返回值的情况下第一个返回值返回需要的值,第二个返回值类型为error,或者bool
- golang的参数列表(包括返回值列表)声明的时候依旧是名字在前,类型在后.
- golang不支持C++等高级语言的重载
最后:
总结非常粗糙,但是目的在于抛砖引玉,希望各位能从中获得一丁点启发.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用