好的,以下是一本markdown格式的学习文档学习笔记,主题是Go 语言结构学习笔记,并且其中包含了一些实例:
Go 语言结构学习笔记
目录
<a name="variables-and-constants"></a>
变量和常量
在Go语言中,可以通过 var
关键字来声明变量,例如:
goCopy Codevar a int = 1
这里声明了一个整型变量 a
,并初始化为1。另外,也可以使用 :=
简短声明语法来声明变量并初始化:
goCopy Codeb := "hello"
这里声明了一个字符串变量 b
,并初始化为 "hello"。同时,Go语言也支持常量的定义:
goCopy Codeconst Pi = 3.14159
这里定义了一个名为 Pi
的常量,其值为3.14159。
<a name="simple-data-types"></a>
简单数据类型
Go语言中有许多简单的数据类型,包括布尔型、整型、浮点型、字符串等。其中,布尔型的取值只有 true
和 false
两种,可用于判断条件;整型和浮点型分别用于处理整数和浮点数运算;字符串则用于存储文本数据。以下是一些简单数据类型的实例:
goCopy Codevar b bool = false // 布尔型变量
var i int = 123 // 整型变量
var f float64 = 3.14 // 浮点型变量
var s string = "hello world" // 字符串变量
i += 10 // 整型变量加法运算
f *= 2 // 浮点型变量乘法运算
s += "!" // 字符串拼接
<a name="arrays-and-slices"></a>
数组和切片
数组和切片都是Go语言中的集合类型,可以用于存储多个相同类型的元素。其中,数组的长度是固定的,而切片则可以动态增长。以下是一些数组和切片的实例:
goCopy Codevar arr [3]int // 声明一个包含3个整型元素的数组
arr[0] = 1 // 给数组第一个元素赋值为1
arr[1] = 2 // 给数组第二个元素赋值为2
arr[2] = 3 // 给数组第三个元素赋值为3
var slice []int // 声明一个整型切片
slice = append(slice, 1) // 往切片中添加一个元素1
slice = append(slice, 2, 3) // 往切片中添加两个元素2和3
<a name="structs-and-pointers"></a>
结构体和指针
结构体是Go语言中的一种自定义类型,可以用于存储多个不同类型的数据。指针则用于引用变量的内存地址,可以用于在函数间进行数据传递。以下是一些结构体和指针的实例:
goCopy Codetype Person struct { // 定义一个名为Person的结构体
Name string
Age int
}
func main() {
p := Person{"Bob", 20} // 创建一个Person类型的变量p
fmt.Println(p.Name) // 输出p的名字字段
fmt.Println(p.Age) // 输出p的年龄字段
var ptr *int // 定义一个整型指针ptr
var i int = 10 // 定义一个整型变量i,并赋值为10
ptr = &i // 将i的地址赋值给ptr
fmt.Println(*ptr) // 输出ptr指向的变量的值
}
<a name="functions"></a>
函数
函数是Go语言中的一种基本构建块,通过将代码封装到函数中,可以使代码更加模块化、易于维护。以下是一个计算两个数之和的函数实例:
goCopy Codefunc add(a int, b int) int { // 定义一个名为add的函数,参数为两个整数,返回值为一个整数
return a + b // 函数体中的代码实现了两个数相加的操作
}
func main() {
sum := add(1, 2) // 调用add函数,将结果保存在变量sum中
fmt.Println(sum) // 输出sum的值
}
以上就是本次Go语言结构学习笔记的内容。希望对你有所帮助!