一、Go语言简介
1.1 Go语言特点
Go语言具有高性能、高并发、语法简单、丰富的标准库、完善的工具链、静态链接、快速编译、跨平台、垃圾回收等特点。
1.2 Go开发环境配置
1.2.1安装GOlang
在浏览器输入go.dev打开Golang的官网,然后点击download,按照提示就可以安装Golang 。
1.2.2安装IDE工具
Go的开发环境可以选择VSCode或者Golang,相关软件到对应官网进行下载。
二、Go语言基础语法
2.1变量
go语言是—门强类型语言,每—个变量都有它自己的变量类型。常见的变量类型包括字符串整数浮点型、布尔型等。
- 未初始化的标准格式如下所示
var 变量名 变量类型
- 初始化变量的标准格式:
var 变量名 = 表达式
- 初始化变量的简短声明格式:
变量名 := 表达式
2.2 if-else
与c语言的写法类似,但是不用'( )'来包裹条件。
if 7%2 == 0 {
fmt.Println("7 is even")
} else {
fmt.Println("7 is odd")
}
2.3 循环
golang只有for一种循环,没有C语言当中的while,不写条件就是死循环。
for j := 7; j < 9; j++ {
fmt.Println(j)
}
2.4 switch
GO中的switch默认执行完相应的case就跳出,不用像C语言需要加break语句。
a := 2
switch a {
case 1:
fmt.Println("one")
case 2:
fmt.Println("two")
case 3:
fmt.Println("three")
case 4, 5:
fmt.Println("four or five")
default:
fmt.Println("other")
}
2.5 数组
声明: var a [4]int 或者 a:=[4]int{1,2,3,4}
var a [5]int
a[4] = 100
2.6 切片
声明:make([]type,len,cap)
方法append:在slice后面追加元素
s := make([]string, 3)
s[0] = "a"
s[1] = "b"
s[2] = "c"
s = append(s, "d")
s = append(s, "e", "f")
2.7 map
声明:变量名 := make(map[key]value)
对于访问未知的key,会返回对应value类型的0值
delete(map,keyName) 删除键值对
m := make(map[string]int)
m["one"] = 1
m["two"] = 2
fmt.Println(m) // map[one:1 two:2]
r, ok := m["unknow"]
fmt.Println(r, ok) // 0 false
delete(m, "one")
2.8 字符串
字符串处理方法:
-
Contains("Hello","ll") //true
-
Count("Hello",l)//2
-
HasPrefix("Hello","He")//true
-
HasSuffix("Hello","lo")//true
-
Index("Hello","ll")//2
-
Join([]string("He","llo"),"-")//He-llo
-
Repeat("Hello",2)//HelloHello
-
Replace("Hello","l","L",1)//HeLlo
-
Split("a.b.c.d",".")//[a,b,c,d]
-
ToLower("Hello")//hello
-
ToUpper("Hello")//HELLO
2.9 range
使用range可以方便的遍历数组、切片和map中的元素
nums := []int{2, 3, 4}
sum := 0
for i, num := range nums {
sum += num
if num == 2 {
fmt.Println("index:", i, "num:", num) // index: 0 num: 2
}
}
fmt.Println(sum) // 9
m := map[string]string{"a": "A", "b": "B"}
for k, v := range m {
fmt.Println(k, v) // b 8; a A
}