Golang基本语法
Golang(通常称为Go)是一种由Google开发的静态类型、编译型语言,它具有简洁、高效和易于维护等特点,Go的设计哲学旨在简化编程任务,并提供快速的编译时间和高效的执行性能。下面是一些Go语言的基本语法要点:
包声明
:每个Go文件都以包声明开始,定义当前文件属于哪个包。
package main
引入包
:使用import
关键字导入依赖。
import "fmt"
函数
:使用func
关键字定义函数。
func main() {
fmt.Println("Hello, World!")
}
变量
:使用var
关键字定义变量,Go也支持类型推断。
var name string = "John"
age := 30 // 类型推断
常量
:使用const
关键字定义常量。
const Pi = 3.14
基本数据类型
:Go有基本的数据类型比如int
、float64
、bool
和string
等。
控制结构
:
If/else
条件语句:if condition1 {
// 条件1为真时执行
} else if condition2 {
// 条件2为真时执行
} else {
// 条件1和条件2都不为真时执行
}
For
循环:for initializer; condition; post {
// 循环体
}
// 或者范围循环
for key, value := range mymap {
fmt.Println(key, value)
}
Switch
语句:switch variable {
case value1:
// 当variable == value1时执行
case value2:
// 当variable == value2时执行
default:
// 其它情况时执行
}
数组和切片
:
数组定义
:var a [5]int // 定义一个包含5个整数的数组
切片定义
:s := []int{1, 2, 3} // 定义一个整数切片
映射
(字典):
m := make(map[string]int)
m["key"] = 42
结构体
:
type Person struct {
Name string
Age int
}
var p Person
p.Name = "Alice"
p.Age = 30
接口
:
type Shape interface {
Area() float64
}
type Circle struct {
radius float64
}
func (c Circle) Area() float64 {
return math.Pi * c.radius * c.radius
}
并发
:
Goroutines
:go func() {
fmt.Println("Running in a goroutine")
}()
Channels
:ch := make(chan int)
go func() {
ch <- 123 // 将数值发送到channel
}()
val := <-ch // 从channel接收数值
这只是Golang基本语法的一个快速概述,Go非常注重实践,推荐你通过编写实际的程序来进一步学习,你可以访问官方文档The Go Programming Language或使用在线资源例如 Go by Example 来了解更多。