Go 语言入门指南:基础语法和常用特性解析 | 青训营

80 阅读2分钟

Go 语言入门指南:基础语法和常用特性解析 摘要 本文旨在为初学者提供一份详尽的 Go 语言入门指南,涵盖了基础语法和常用特性。通过本文,读者可以迅速了解 Go 语言的基本结构,为深入学习 Go 语言打下坚实的基础。

  1. 引言 Go 语言,又称 Golang,是一门开源的编程语言,由 Google 的 Robert Griesemer、Rob Pike 和 Ken Thompson 联合设计并公开推出于 2007 年。Go 语言的设计目标是在保持高性能、高效率的同时,提供简洁、安全、易于理解的语法。Go 语言目前已逐渐成为云计算、微服务和容器化领域的主流编程语言。
  2. 基础语法 2.1 变量声明与初始化 Go 语言中的变量需要显式声明。声明变量时,需要指定变量名、数据类型和初始值。变量名遵循标识符的命名规则,由字母、数字和下划线组成,且以字母或下划线开头。数据类型分为整型、浮点型、布尔型、字符串型等。
var a int = 10  
var b float64 = 3.14  
var c bool = true  
var d string = "Hello, world!"  

2.2 控制结构 Go 语言的控制结构包括条件判断(if)、循环(for、switch)和跳转(break、continue)等。 2.2.1 if 语句 if 语句用于根据条件执行相应的代码块。如果条件为 true,则执行代码块;如果条件为 false,则跳过代码块。

age := 18  
if age >= 18 {  
   fmt.Println("成年人")  
} else {  
   fmt.Println("未成年人")  
}

2.2.2 for 循环 for 循环用于遍历数组、切片或字符串等集合元素。

numbers := []int{1, 2, 3, 4, 5}  
for i := 0; i < len(numbers); i++ {  
   fmt.Printf("%d ", numbers[i])  
}

2.2.3 switch 语句 switch 语句用于根据不同条件执行相应的代码块。

day := "Saturday"  
switch day {  
case "Monday":  
   fmt.Println("星期一")  
case "Friday":  
   fmt.Println("星期五")  
case "Saturday":  
   fmt.Println("星期六")  
default:  
   fmt.Println("其他日子")  
}

2.2.4 break 和 continue 语句 break 语句用于跳出当前循环,而 continue 语句用于跳过本次循环,继续下一次循环。

for i := 0; i < 5; i++ {  
   if i == 3 {  
       break  
   }  
   fmt.Printf("%d ", i)  
}
for i := 0; i < 5; i++ {  
   if i == 2 {  
       continue  
   }  
   fmt.Printf("%d ", i)  
}

2.3 函数 Go 语言中的函数是一段可重用的代码块,用于完成特定任务。函数定义时需要指定函数名、参数列表和返回值。

func add(a, b int) int {  
   return a + b  
}
sum := add(1, 2)  
fmt.Println(sum)  
  1. 常用特性 3.1 并发编程 Go 语言原生支持并发编程,使用协程(goroutine)和通道(channel)实现轻量级的线程调度和通信。
func printHello() {  
   fmt.Println("Hello, world!")  
}
func main() {  
   go printHello()  
   time.Sleep(1 * time.Second)  
   fmt.Println("Go is great!")  
}

3.2 接口 接口是一种抽象类型,用于定义类型应满足的方法。任何实现了接口规定的方法的类型都可以被认为是该接口的实例。

type Shape interface {  
   Area() float64  
}
type Circle struct {  
   Radius float64  
}
func