Golang

本文档详细介绍了Golang的基础知识,包括环境安装、项目目录结构、变量、流程控制、函数、数组、结构体、JSON序列化、切片、Map、接口和并发。特别讨论了Go语言中的JSON操作、通道(channel)的使用以及并发编程的关键概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Golang

一、Golang环境安装

  1. Golang下载地址
  2. IDE推荐 JetBrain GoLand
  3. 设置GoPath

二、Go项目目录结构

go项目目录结构

三、Hello world

package main  // 定义了包名,表示这个文件属于哪个包,每个Go程序都包含一个名为main的包
import "fmt" // 导入包
func main(){
   
   
	fmt.Println("Hello World!")
}

Go函数的定义

func  函数名(参数列表)(返回值列表){
   
   
	//函数体
}
// 实例
func Compute(value1 int, value2 float32)(result float64 err error){
   
   
	//函数体
}

四、Go语言变量

声明变量的一般形式是使用var关键字
var 变量名 变量类型var 变量1,变量2 变量类型

变量声明

// 1、若没有初始化,则变量默认为0
var v_name v_type
v_name = value

var v_name1 v_name2 v_type
v_name1, v_name2 = value1, value2

// 2、直接初始化
var v_name v_type = value
var v_name1, v_name2 v_type = value1, value2

// 3、自行判断变量类型
var v_name = value
var v_name1, v_name2 = value1, value2

// 4、省略var
v_name := value
v_name1, v_name2 := value1, value2

//因式分解关键字的写法一般用于声明全局变量
var (
	v_name1 v_type1
	v_name2 v_type2
)

常量声明

const 变量名 [变量类型] = value

const a, b, c = 1, false, "str"

//常量还可以用作枚举
const (
	a = 0
	b = 1
	c = 2
)

iotaconst关键字出现时被重置为0,并在const中每新增一行常量声明将是iota计数一次

const (
	a = iota // a = 0
	b = iota // b = 1
	c = iota // c = 2
)

// 可以简写成
const (
	a = iota
	b
	c
)

变量类型

  • 布尔类型:bool
  • 整型:int8、byte、int16、int、uint、uintptr
  • 浮点类型:float32、float64
  • 复数类型:complex64、complex128
  • 字符串:string
  • 字符类型:rune
  • 错误类型:error

数组

[32]byte // 长度为32的数组,每个元素为一个字节
[2*N]struct{
   
   x, y int32} //复杂类型数组
[1000]*float64 //指针数组
[3][5]int //二维数组
[2][2][2]float64 // 三维数组

五、流程控制

条件语句

if a < 5 {
   
   
	return 0
}else {
   
   
	return 1
}
if statement;condition {
   
   
	// do something
}
// 例
if val, ok := map[key]; ok {
   
   
	//do something
}

选择语句

switch i {
   
   
	case 0:
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值