-
Go语言并发概览 (并发的作用)
所属栏目:[语言] 日期:2023-06-30 热度:4434
有人把Go语言比作 21 世纪的C语言,第一是因为Go语言设计简单,第二则是因为 21 世纪最重要的就是并发程序设计,而 Go 从语言层面就支持并发。同时实现了自动垃圾回收机制。
Go语言的并发机制运用起来非常简便,在[详细] -
Go语言go mod包依赖管理工具使用说明
所属栏目:[语言] 日期:2023-06-30 热度:4821
最早的时候,Go语言所依赖的所有的第三方库都放在 GOPATH 这个目录下面,这就导致了同一个库只能保存一个版本的代码。如果不同的项目依赖同一个第三方的库的不同版本,应该怎么解决?
go module 是Go语言从 1.11 [详细] -
Go语言flag包:命令行参数剖析
所属栏目:[语言] 日期:2023-06-30 热度:1497
在编写命令行程序(工具、server)时,我们有时需要对命令参数进行解析,各种编程语言一般都会提供解析命令行参数的方法或库,以方便程序员使用。在Go语言中的 flag 包中,提供了命令行参数解析的功能。
下面我们[详细] -
Go语言os包用法概述
所属栏目:[语言] 日期:2023-06-30 热度:1855
Go语言的 os 包中提供了操作系统函数的接口,是一个比较重要的包。顾名思义,os 包的作用主要是在服务器上进行系统的基本操作,如文件操作、目录操作、执行命令、信号与中断、进程、系统状态等等。
os 包中的常用函[详细] -
Go语言time包:时间与日期
所属栏目:[语言] 日期:2023-06-30 热度:6903
时间和日期是我们开发中经常会用到的,Go语言中的 time 包提供了时间显示和测量等所用的函数,本节我们就来介绍一下 time 包的基本用法。
time 包简介
时间一般包含时间值和时区,可以从Go语言中 time 包的源码中看[详细] -
Go语言规则表达式:规则包
所属栏目:[语言] 日期:2023-06-30 热度:918
正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具。虽然正则表达式比纯粹的文本匹配效率低,但是它却更灵活,按照它的语法规则,根据需求构造出的正则表达式能够从原始文本中筛选出几乎任何你想要得到的[详细]
-
Go语言大包:对于整数的精度估计
所属栏目:[语言] 日期:2023-06-30 热度:6038
实际开发中,对于超出 int64 或者 uint64 类型的大数进行计算时,如果对精度没有要求,使用 float32 或者 float64 就可以胜任,但如果对精度有严格要求的时候,我们就不能使用浮点数了,因为浮点数在内存中只能被近似[详细]
-
Go语言sync包与锁:限定线程对变量的访问
所属栏目:[语言] 日期:2023-06-30 热度:6139
Go语言中 sync 包里提供了互斥锁 Mutex 和读写锁 RWMutex 用于处理并发过程中可能出现同时两个或多个协程(或线程)读或写同一个变量的情况。
为什么需要锁
锁是 sync 包中的核心,它主要有两个方法,分别是加锁([详细] -
使用其他代码在代码中使用 Go语言导入包
所属栏目:[语言] 日期:2023-06-30 热度:6208
可以在一个 Go语言源文件包声明语句之后,其它非导入声明语句之前,包含零到多个导入包声明语句。每个导入声明可以单独指定一个导入路径,也可以通过圆括号同时导入多个导入路径。要引用其他包的标识符,可以使用 im[详细]
-
Go语言引出包中的标识符——让外部访问包的类型和值
所属栏目:[语言] 日期:2023-06-30 热度:8680
在 Go语言中,如果想在一个包里引用另外一个包里的标识符(如类型、变量、常量等)时,必须首先将被引用的标识符导出,将要导出的标识符的首字母大写就可以让引用者可以访问这些标识符了。
导出包内标识符
下面代码[详细] -
Go语言package(构建包)
所属栏目:[语言] 日期:2023-06-29 热度:628
包(package)是多个 Go 源码的集合,是一种高级的代码复用方案,像 fmt、os、io 等这样具有常用功能的内置包在 Go语言中有 150 个以上,它们被称为标准库,大部分(一些底层的除外)内置于 Go 本身。
包要求在同[详细] -
自定义 go语言程序包
所属栏目:[语言] 日期:2023-06-29 热度:9355
包是Go语言中代码组成和代码编译的主要方式。关于包的基本信息我们已经在前面介绍过了,本节我们主要来介绍一下如何自定义一个包并使用它。
到目前为止,我们所使用的例子都是以一个包的形式存在的,比如 main 包[详细] -
Go语言常用内置包概述
所属栏目:[语言] 日期:2023-06-29 热度:2936
标准的Go语言代码库中包含了大量的包,并且在安装 Go 的时候多数会自动安装到系统中。我们可以在 $GOROOT/src/pkg 目录中查看这些包。下面简单介绍一些我们开发中常用的包。
1) fmt
fmt 包实现了格式化的标准输入输[详细] -
Go语言GOPATH分析(Go语言工作目录)
所属栏目:[语言] 日期:2023-06-29 热度:3211
GOPATH 是 Go语言中使用的一个环境变量,它使用绝对路径提供项目的工作目录。
工作目录是一个工程开发的相对参考目录,好比当你要在公司编写一套服务器代码,你的工位所包含的桌面、计算机及椅子就是你的工作区。[详细] -
Go语言封装简介和实现细节
所属栏目:[语言] 日期:2023-06-29 热度:9593
在Go语言中封装就是把抽象出来的字段和对字段的操作封装在一起,数据被保护在内部,程序的其它包只能通过被授权的方法,才能对字段进行操作。
封装的好处:
隐藏实现细节;
可以对数据进行验证,保证数据安全合[详细] -
Go语言包的基本定义
所属栏目:[语言] 日期:2023-06-29 热度:1298
Go语言是使用包来组织源代码的,包(package)是多个 Go 源码的集合,是一种高级的代码复用方案。Go语言中为我们提供了很多内置包,如 fmt、os、io 等。
任何源代码文件必须属于某个包,同时源码文件的第一行有效[详细] -
Go语言完成Web服务器
所属栏目:[语言] 日期:2023-06-29 热度:4806
Go语言里面提供了一个完善的 net/http 包,通过 net/http 包我们可以很方便的搭建一个可以运行的 Web 服务器。同时使用 net/http 包能很简单地对 Web 的路由,静态文件,模版,cookie 等数据进行设置和操作。
Web服[详细] -
Go语言error接口:返回错误数据
所属栏目:[语言] 日期:2023-06-29 热度:1687
错误处理在每个编程语言中都是一项重要内容,通常开发中遇到的分为异常与错误两种,Go语言中也不例外。本节我们主要来学习一下Go语言中的错误处理。
在C语言中通过返回 -1 或者 NULL 之类的信息来表示错误,但是对[详细] -
Go语言类型分支(switch判定空接口中变量的类型)
所属栏目:[语言] 日期:2023-06-29 热度:3504
type-switch 流程控制的语法或许是Go语言中最古怪的语法。 它可以被看作是类型断言的增强版。它和 switch-case 流程控制代码块有些相似。 一个 type-switch 流程控制代码块的语法如下所示:
switch t := areaIntf.([详细] -
Go语言空接口分类(interface{})
所属栏目:[语言] 日期:2023-06-29 热度:1527
空接口是接口类型的特殊形式,空接口没有任何方法,因此任何类型都无须实现空接口。从实现的角度看,任何值都满足这个接口的需求。因此空接口类型可以保存任何值,也可以从空接口中取出原值。
提示
空接口类型类似[详细] -
Go语言空接口类别(interface{})
所属栏目:[语言] 日期:2023-06-28 热度:5178
空接口是接口类型的特殊形式,空接口没有任何方法,因此任何类型都无须实现空接口。从实现的角度看,任何值都满足这个接口的需求。因此空接口类型可以保存任何值,也可以从空接口中取出原值。
提示
空接口类型类似[详细] -
跨语言接口与类型之间的转化
所属栏目:[语言] 日期:2023-06-28 热度:2521
Go语言中使用接口断言(type assertions)将接口转换成另外一个接口,也可以将接口转换为另外的类型。接口的转换在开发中非常常见,使用也非常频繁。
类型断言的格式
类型断言是一个使用在接口值上的操作。语法上它[详细] -
Go语言接口的嵌套结构设计
所属栏目:[语言] 日期:2023-06-28 热度:5092
在Go语言中,不仅结构体与结构体之间可以嵌套,接口与接口间也可以通过嵌套创造出新的接口。
一个接口可以包含一个或多个其他的接口,这相当于直接将这些内嵌接口的方法列举在外层接口中一样。只要接口的所有方法[详细] -
Go语言的排列(借助sort.Interface接口)
所属栏目:[语言] 日期:2023-06-28 热度:1508
排序操作和字符串格式化一样是很多程序经常使用的操作。尽管一个最短的快排程序只要 15 行就可以搞定,但是一个健壮的实现需要更多的代码,并且我们不希望每次我们需要的时候都重写或者拷贝这些代码。
幸运的是,[详细] -
Go语言类型断言概述
所属栏目:[语言] 日期:2023-06-28 热度:4380
类型断言(Type Assertion)是一个使用在接口值上的操作,用于检查接口类型变量所持有的值是否实现了期望的接口或者具体的类型。
在Go语言中类型断言的语法格式如下:
value, ok := x.(T)
其中,x 表示一个接[详细]