Go语言的优点
- golang的学习成本低 ,具有优越的性能 ,程序方便操作 ,框架标准。
- 内存管理、数组安全、编译迅速、并行、有趣、开源。
Go hello world实例
package main
import "fmt"
func main() { /*注意 { 不能单独放在一行 , 否则会报错*/
/* 这是我的第一个简单的程序 */
fmt.Println("Hello, World!")
}
Go语言条件、循环语句
- Go的条件和循环语句与其他语言大抵相同 ,只是if或者for的后面的括号可以选择性省略 ,注意可读性
if (condition) {
// code block
}
for (i := 0; i < 10; i++) {
// code block
}
函数
- Go语言函数的写法和其他语言有一些区别 :
-
- 函数声明:Go语言的函数声明包括函数名、参数列表、返回值类型(在参数列表之后声明) 例如
func Name (param1 type1 ,param2 type2) returntype ()。
- 函数声明:Go语言的函数声明包括函数名、参数列表、返回值类型(在参数列表之后声明) 例如
-
- 多返回值:Go语言支持返回多个值。
-
- Go语言支持匿名函数和闭包的概念 ,使得函数可以作为变量、参数、或者返回值。
数组
- 1.声明数组
var arr[size] type,size表示数组大小, type表示类型。 - 2.数组长度:可以使用
len()函数获取数组的长度。例如,len(arr)返回数组arr的长度。 - Go的数组初始化和访问详细见[这里](Go 语言数组 | 菜鸟教程 (runoob.com))
Go语言切片(Slice)
- 数组的长度不可改变,Go提供了一种灵活的内置类型切片("动态数组"),与数组相比,切片的长度是不固定的,可以追加元素。
- 两种定义切片的方式 1.
slice := make([]type, length, capacity)这里len是切片的初始长度,capacity是切片的容量, 2.slice := []type{value1, value2, ...}。
在Go语言中,append()和copy()是两个常用的切片操作函数。
1.append()函数:append()函数用于向切片中追加元素,可以一次追加一个或者多个元素,他的基本语法newSlice := append(slice, element1, element2, ...),其中slice是要追加元素的切片,element1 ,element2...是要追加的元素,该函数的返回值是一个新的切片,包含原始切片和追加的元素。
2.copy()函数:copy()函数用于将一个切片的元素复制到另一个切片中,它的基本语法如下:copy(destSlice, srcSlice),其中destSlice是目标切片,srcSlice是源切片,copy()函数会将源切片的元素复制到目标切片中,覆盖目标切片的原有元素
Go语言 Range
range关键字用于迭代数组、切片、字符串、映射(map)和通道(channel)等数据结构。它提供了一种简洁的方式来遍历这些数据结构中的元素。range的基本语法for index, value := range collection { // 使用 index 和 value 进行操作 }value表示当前元素的值。在每次循环迭代中,range会将索引和值分别赋值给index和value,然后执行循环体中的代码。
Go语言map
- 在Go语言中,
map是一种无序的键值对集合,也被称为字典(dictionary)或关联数组。map的基本语法如下:mapName := make(map[keyType]valueType) - 其中,
mapName是map的变量名,keyType表示键的类型,valueType表示值的类型。通过make()函数创建一个空的map,然后可以使用mapName[key]的方式来访问和修改map中的元素。 - 关于map的增删改查看[这里](Go 语言 Map(集合) | 菜鸟教程 (runoob.com))
ps:0基础看课程感到深深的恶意