本文主要介绍以下GO语言的使用方法:
- 变量定义
- 分支if和switch
- 循环for
- 数组array
- slice
1. 变量定义
Go 语言使用 var 关键字定义变量,也支持短变量声明。
-
基本定义:
var name string = "Go" var age int = 5 var price float64 = 9.99 -
类型推导:不显式指定类型时,Go 自动推导类型。
var title = "Golang" -
短变量声明(仅限于函数内部):
count := 10
2. 分支 if 和 switch
-
if语句:if age >= 18 { fmt.Println("Gooooooooooo") } else if age >= 13 { fmt.Println("Teenager") } else { fmt.Println("Child") } -
if带初始化语句:在条件判断前进行变量初始化。if score := 85; score > 90 { fmt.Println("Excellent") } -
switch语句:switch day := 3; day { case 1: fmt.Println("Monday") case 2: fmt.Println("Tuesday") default: fmt.Println("Other day") } -
无条件 switch:省略表达式可实现多条件匹配。
switch { case age >= 18: fmt.Println("Adult") case age >= 13: fmt.Println("Teenager") default: fmt.Println("Child") }
3. 循环 for
Go 中唯一的循环是 for,用法多样化。
-
标准循环:
for i := 0; i < 5; i++ { fmt.Println(i) } -
省略初始化和后置语句:
i := 0 for i < 5 { fmt.Println(i) i++ } -
无限循环:
for { fmt.Println("Looping...") }
4. 数组 array
数组是固定长度、元素类型相同的集合。
-
数组定义:
var arr [5]int arr[0] = 1 arr[1] = 2 -
数组初始化:
arr := [5]int{1, 2, 3, 4, 5} -
自动推断长度:
arr := [...]int{1, 2, 3, 4, 5}
5. 切片 slice
切片是动态数组,可变长度,常用于存储同类型数据。
-
创建切片:
var s []int // 声明切片 s = make([]int, 5, 10) // 长度5,容量10 -
使用数组生成切片:
arr := [5]int{1, 2, 3, 4, 5} s := arr[1:4] // 切片包含索引1到3的元素 -
追加元素:
s := []int{1, 2, 3} s = append(s, 4, 5) -
切片拷贝:
s1 := []int{1, 2, 3} s2 := make([]int, len(s1)) copy(s2, s1)