Go 语言基础语法学习笔记

109 阅读3分钟

Go(也叫 Golang)是 Google 开发的一种开源编程语言,旨在简化编程,特别是在系统级开发中,具备简洁、有效的并发支持和内存管理。

1.Hello, World! 示例

Go 程序从 main 包开始,main 包中的 main 函数是程序的入口点。

image.png

  • package main:定义程序的包名。
  • import "fmt":导入外部包,用于程序中调用功能。fmt 包提供了格式化 I/O 函数,如 Println。
  • func main():定义 main 函数,程序执行时从 main 函数开始。

2.变量声明与类型

Go 是静态类型语言,变量声明时需要指定类型。可以使用 var 或短声明符 := 来声明变量。基本类型为:

  • 整型:int, int8, int16, int32, int64
  • 无符号整型:uint, uint8, uint16, uint32, uint64
  • 浮点型:float32, float64
  • 布尔型:bool
  • 字符串:string

image.png

  • var x int = 10:声明一个类型为 int 的变量 x,并初始化为 10。
  • := 语法:Go 支持简短的变量声明,如果在函数内,类型可以省略,Go 会自动推断类型。

image.png

3. 常量

常量在程序运行时不会改变,可以用 const 来声明。

  • const Pi = 3.14:声明一个常量 Pi,其值为 3.14。

image.png

4.语句

  • 条件语句:Go 使用 if 来进行条件判断,支持 else if 和 else 分支。
  • 循环语句:Go 支持 for 循环,它是唯一的循环结构,可以用来实现 while 循环和 for 循环。
  • 数组与切片:Go 中的数组具有固定长度,而切片是动态的,长度可以随时变化。通常使用切片而不是数组。
  • 函数:Go 使用 func 关键字声明函数,支持多返回值。
  • 结构体(Struct):Go 中的结构体是一种复合数据类型,可以将多个字段组合成一个单元。
  • 接口(Interface):接口定义了对象的行为。Go 是基于接口来实现多态的,不需要显式声明实现关系。

通过对 Go 语言基础语法的学习,可以看到 Go 是一门简洁而高效的语言,特别适合用来构建高并发的应用和系统。从最基本的语法到函数、数组、切片、结构体、接口等概念,Go 的设计理念旨在简化开发者的工作流程,减少开发中的复杂度。

个人认为,Go 语言最大的优势之一就是它的并发机制。Go 协程(goroutine)是 Go 的一项核心特性,相比于传统的线程模型,Go 协程更加轻量,可以有效支持并发和高效的并行计算。虽然这部分内容在基础语法中没有涉及,但我认为它是 Go 语言的核心竞争力之一,非常值得进一步深入学习。

在实际的开发中,Go 的内存管理、标准库支持以及编译速度等优点,都让开发者能够高效地实现复杂的系统。尤其是在微服务、云计算以及大型分布式系统的开发中,Go 显得尤为重要。