以下是关于 Go 基础语法 的详细讲解,涵盖注释、变量与数据类型、运算符以及输入与输出。通过学习这些内容,您将对 Go 编程语言有一个清晰的初步认识。
1. 注释
Go 的注释分为单行注释和多行注释,注释不会被编译器执行,用于解释代码逻辑、标记问题或文档说明。
1.1 单行注释
以 //
开头的内容为单行注释,适用于简短的说明。
// 这是一个单行注释
fmt.Println("Hello, World!")
1.2 多行注释
多行注释使用 /*
和 */
包裹,适合较长的说明或代码段的注释。
/*
这是一个多行注释。
可以用于详细的文档说明。
*/
fmt.Println("Hello, World!")
2. 变量与数据类型
2.1 基本数据类型
Go 是强类型语言,常用的基本数据类型如下:
数据类型 | 描述 | 示例 |
---|---|---|
整型 | int (32 或 64 位整型) | int a = 10 |
浮点型 | float32 , float64 | float64 b = 3.14 |
字符串 | string | string c = "GoLang" |
布尔值 | bool (true 或 false ) | bool d = true |
2.2 变量声明与初始化
在 Go 中,变量的声明与初始化可以通过以下方式完成:
显式声明变量
var age int = 25 // 声明并初始化
隐式声明变量(类型推导)
name := "Go语言" // 自动推导为 string 类型
批量声明变量
var (x inty stringz bool = true
)
3. 运算符
Go 提供了一系列的运算符,用于处理数学计算、逻辑判断和赋值操作。
3.1 算术运算符
运算符 | 描述 | 示例 |
---|---|---|
+ | 加法 | x + y |
- | 减法 | x - y |
* | 乘法 | x * y |
/ | 除法 | x / y |
% | 取模 | x % y |
示例:
a := 10
b := 3
fmt.Println(a + b) // 输出 13
fmt.Println(a % b) // 输出 1
3.2 比较运算符
运算符 | 描述 | 示例 |
---|---|---|
== | 判断相等 | x == y |
!= | 判断不等 | x != y |
> | 判断大于 | x > y |
< | 判断小于 | x < y |
>= | 判断大于等于 | x >= y |
<= | 判断小于等于 | x <= y |
3.3 逻辑运算符
运算符 | 描述 | 示例 |
---|---|---|
&& | 与(AND) | x > 0 && y > 0 |
` | ` | |
! | 非(NOT) | !x |
示例:
a := true
b := false
fmt.Println(a && b) // 输出 false
fmt.Println(a || b) // 输出 true
3.4 赋值运算符
运算符 | 描述 | 示例 |
---|---|---|
= | 赋值 | x = 10 |
+= | 加后赋值 | x += 2 |
-= | 减后赋值 | x -= 2 |
*= | 乘后赋值 | x *= 2 |
/= | 除后赋值 | x /= 2 |
%= | 取模后赋值 | x %= 2 |
示例:
x := 5
x += 3
fmt.Println(x) // 输出 8
4. 输入与输出
Go 使用内置的 fmt
包进行输入和输出操作。
4.1 输出
打印字符串
fmt.Println("Hello, World!") // 自动换行
fmt.Print("Hello") // 不换行
格式化输出
name := "Go"
age := 10
fmt.Printf("语言:%s,版本:%d\n", name, age) // 格式化字符串
4.2 输入
使用 fmt.Scanln
或 fmt.Scanf
读取用户输入。
示例:读取单个值
var name string
fmt.Print("请输入你的名字:")
fmt.Scanln(&name)
fmt.Printf("你好, %s!\n", name)
示例:读取多个值
var age int
var height float64
fmt.Print("请输入年龄和身高:")
fmt.Scanf("%d %f", &age, &height)
fmt.Printf("年龄:%d,身高:%.2f\n", age, height)
完整代码示例
package mainimport "fmt"func main() {// 变量声明与初始化var name string = "Go语言"age := 10// 输出fmt.Printf("欢迎使用 %s,版本 %d\n", name, age)// 用户输入var userName stringfmt.Print("请输入你的名字:")fmt.Scanln(&userName)fmt.Printf("你好, %s!\n", userName)// 运算符演示a, b := 15, 4fmt.Printf("a+b=%d, a*b=%d\n", a+b, a*b)// 逻辑判断isGoFun := trueif isGoFun {fmt.Println("Go 是有趣的!")}
}
通过以上内容,您可以掌握 Go 语言的基础语法,包括注释、变量与数据类型、运算符以及输入输出操作。进一步学习中可以扩展至条件语句、循环结构和函数等内容。