Golang 入门笔记
511.29 KB
2 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .pdf | 3 |
摘要 | ||
文档系统阐述了Golang的基础知识,包括数据类型、变量、运算符以及基本的数据结构如数组。详细介绍了Golang的语法基础,如关系运算符、逻辑运算符的使用,各类运算符的优先级,以及数值的进制表示和位运算。还涉及了指针、数组、切片、结构体等高级主题,以及程序流程控制的相关内容,包括循环语句、条件语句和函数的使用。 | ||
AI总结 | ||
# 《Golang 入门笔记》总结
## 1. 算术运算符
- **除法**:整数除法舍弃小数部分,浮点数参与运算结果保留小数。
- 示例:`10 / 4 = 2`,`10 / 4.0 = 2.5`。
- **取模**:`a % b = a - (a / b) * b`。
- 示例:`10 % 3 = 1`,`-10 % 3 = -1`。
- **自增/自减**:Golang仅支持`i++`和`i--`,不支持`++i`或`--i`。
## 2. 关系运算符
- 结果为`bool`类型(`true`或`false`)。
- 常用在`if`和循环条件中。
- 主要运算符:`==`、`!=`、`>`、`<`、`>=`、`<=`。
## 3. 逻辑运算符
- **&&(短路与)**:若第一个条件为`false`,第二个条件不判断。
- **||(短路或)**:若第一个条件为`true`,第二个条件不判断。
- 示例代码示益说明逻辑短路特性。
## 4. 变量与数据类型
- **变量**:支持`var`和`:=`两种声明方式。
- **基本数据类型**:
- **布尔类型**:`bool`,占1字节。
- **数字类型**:`int`、`float`、`complex`等。
- **字符串类型**:UTF-8编码,不可修改。
- **复合数据类型**:
- **数组**:固定长度,元素类型相同。
- **切片**:动态数组,长度可变。
- **Map**:键值对集合,无序。
- **类型转换**:需显式转换,避免自动转换。
## 5. 指针与结构体
- **指针**:
- 获取地址:`&变量名`。
- 指针类型:`*类型`。
-NIL指针值为`nil`。
- **结构体**:
- 定义:`struct{字段列表}`。
- 访问字段:`对象.字段`。
- 指针引用:`*结构体指针.字段`。
## 6. 函数与方法
- **函数**:
- 定义:`func 函数名(参数列表) 返回类型 { 函数体 }`。
- 可返回多个值。
- 支持变量作用域和重名。
- **方法**:
-附属类型(结构体、基本类型)。
- 定义:`func (接收者 类型) 方法名(参数列表) 返回类型 { 方法体 }`。
## 7. 错误处理与并发
- **错误处理**:
- 错误类型实现`error`接口。
- 使用`err`类型处理错误。
- **并发**:
- `goroutine`:輕量級線程,由`go`關鍵字啟動。
- 通道(`channel`):協調數據交換,避免竞態條件。
## 8. 包與模塊
- **包**:
- 每文件屬於一個包。
- 包名通常與文件夾名一致。
- 首字母大寫的公有函數可跨包訪問。
- **模塊**:
- 使用`go mod`管理項目。
- 定義模塊:`go mod init 安裝 鴨子名`。
## 9. 程序流程控制
- **循环**:
- `for`循環。
- breaks, continues控制執行流。
- **條件控制**:
- `if`語句。
- `switch`多條件判斷。
- **跳轉語句**:
- `goto`語句跳轉。
- `defer`延遲執行。
## 10. 運算符優先級
按從高到低排列:
1. 單目運算符(`-`、`!`、`*`、`&`)
2. 算術運算符
3. 移位運算符
4. 比較運算符
5. 布爾邏輯運算符
6. 位邏輯運算符
7. 赋值運算符
8. 逗號運算符
---
以上總結涵盖了《Golang 入門筆記》的核心內容,鎖定基礎概念與關鍵細節,.Controls_SURANCE religions الول꼼誤 Plum Hutchinson scenekitcollectioncpppliers. |
来源 | toanle.ltd |
---|
P1
P2
下载文档到本地,方便使用
文档评分