Go语言初学笔记(常见概念)| 青训营

89 阅读3分钟

Go语言初学笔记(常见概念)

简介

Go语言(也称为Golang)是一种由Google开发的开源编程语言。它结合了静态类型语言的安全性和高效性,以及动态类型语言的灵活性和简洁性。Go语言特点如下:

  • 简洁易读:Go语言设计简单,代码易读,具备良好的可维护性。
  • 高效执行:Go语言通过并发编程来实现高并发性能,适用于服务器端和分布式系统开发。
  • 内存管理:Go语言拥有自动垃圾回收机制,使开发者不必担心内存管理问题。
  • 丰富标准库:Go语言内置许多标准库,方便开发者进行常见任务的处理。

安装Go

首先,你需要在计算机上安装Go编程语言。前往Go官方网站下载最新的Go安装包并按照官方指引进行安装。安装完成后,可以在终端中运行以下命令来验证是否成功安装:

go version

如果看到类似于go version go1.x.x的输出,表示Go已成功安装。

Hello, World!

让我们从经典的“Hello, World!”程序开始。创建一个名为hello.go的文件,并输入以下代码:

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

在终端中,使用以下命令运行程序:

go run hello.go

你将在终端中看到输出:Hello, World!。恭喜,你编写了你的第一个Go程序!

基本语法

以下是一些Go语言的基本语法:

变量声明

Go语言使用var关键字来声明变量。例如:

var age int
var name string = "John"

也可以使用短变量声明:

age := 30

函数

Go语言使用func关键字来声明函数:

func add(x, y int) int {
    return x + y
}

控制流

Go语言的控制流与其他编程语言类似,包括ifforswitch语句。

if x > 0 {
    // do something
} else if x < 0 {
    // do something else
} else {
    // do something different
}

for i := 0; i < 5; i++ {
    // loop body
}

switch day {
case "Monday":
    // do something on Monday
case "Tuesday":
    // do something on Tuesday
default:
    // do something on other days
}

数组和切片

Go语言支持数组和切片类型:

// 声明数组
var nums [5]int
nums = [5]int{1, 2, 3, 4, 5}

// 切片
var mySlice []int
mySlice = []int{10, 20, 30}

结构体

结构体是一种用户自定义的复合类型,用于存储不同类型的字段:

type Person struct {
    Name string
    Age  int
}

并发

Go语言通过goroutine实现轻量级并发,可以通过go关键字启动goroutine:

func printNumbers() {
    for i := 0; i < 5; i++ {
        fmt.Println(i)
    }
}

func main() {
    go printNumbers()
    fmt.Println("Main function")
}

错误处理

Go语言通过返回错误值来处理错误,通常以error类型作为返回值:

func divide(x, y float64) (float64, error) {
    if y == 0 {
        return 0, fmt.Errorf("division by zero is not allowed")
    }
    return x / y, nil
}

结论

Go语言是一门强大而简洁的编程语言,适用于各种应用程序开发。本篇笔记仅涵盖了Go语言的基础知识,希望能够帮助你入门Go编程。继续学习和探索,你将发现Go语言的更多优秀特性和功能。