volcano 2023-08-21 20:00
本文主要梳理自第六届字节跳动青训营(后端组)-Go语言原理与实践第一节(王克纯老师主讲)。
Go,也称为 Golang 或 Go 语言,是Google 开发的一种静态的、编译型的开源编程语言。软件开发人员在一系列操作系统和框架中使用 Go 来开发 Web 应用程序、云和网络服务以及其他类型的软件。它的语法简介,易于阅读与编写。
Go语言拥有以下特性:
- 高性能、高并发:与其他诸如c++、java等主流编程语言相比,Go语言内部使用了轻量级的线程和通信原语Go语言来实现高效的并发编程,使得Go语言拥有了高性能、高并发的特点。
- 语法简单、学习曲线平缓:Go语言相比于其他编程语言拥有简洁、易于理解的特性与语法,因而初学者可以快速上手,拥有较平缓的学习曲线。
- 拥有丰富的标准库:Go语言的标准库涵盖了文本处理、加密、网络等诸多领域,这些功能可以大大提高开发者的开发效率。
- 跨平台:Go语言可以在各个操作系统上运行,开发者不需要担心更换操作系统后无法正常开发的问题。
Go语言的基础语法如下:
- Hello world:代码如下
package main
import (
"fmt"
"math"
)
func main() {
fmt.Println("Hello,World!")
}
其中,第一行代表这个文件属于main包的其中一部分,之后import里面的内容指的是本代码需要引入fmt和math两个包,在最后的main函数中利用fmt包中的println函数将Hello World打印出来。
- 变量和常量:Go语言是一种强类型语言,每一个变量都有自己的变量类型,可以使用var来声明变量,用const来声明常量,代码如下:
var a = "initial"
var b, c int = 1, 2
var d = true
const s string = "114514"
const h = 114514
其中,第一行至第三行分别定义了字符串变量,整型变量和bool型变量,最后两行则定义了字符串常量和整型常量。
3.选择结构:Go语言中的选择结构通过if-else和switch来实现,if-else大体写法与C/C++类似,其不同点在于:(1)Go语言中,if后面的语句不需要加括号。(2)Go语言中if语句必须写大括号。switch大体写法亦与C/C++类似,其不同点在于:(1)Go语言中不需要加break。(2)Go语言的switch功能更加强大,可以使用任意的变量类型。代码如下:
if 7%2 == 0 {
fmt.Println("7 is even")
} else {
fmt.Println("7 is odd")
}
switch day {
case 1:
fmt.Println("Monday")
case 2:
fmt.Println("Tuesday")
default:
fmt.Println("Wednesday")
}
其中,第一部分利用if-else结构判断7是否是奇数。第二部分则利用switch结构输出对应数字对应的星期天数。
- 循环结构:Go语言摒弃了while循环和do-while循环,仅仅使用for循环来实现循环结构。在for循环中,可使用break跳出循环;使用continue继续循环。代码如下:
for j := 7; j < 9; j++ {
fmt.Println(j)
}
其中,使用了for循环结构输出7到9。