📝 Go教程

801篇技术文档
  检查字符串是否以 Golang 中的指定后缀结尾

📅  最后修改于: 2021-10-24 13:14:32        🧑  作者: Mango

在 Go 语言中,字符串不同于Java、C++、 Python等其他语言。它是一系列可变宽度字符,其中每个字符都由一个或多个使用 UTF-8 编码的字节表示。在 Go字符串,您可以借助HasSuffix()函数检查字符串是否以指定的后缀结尾。如果给定的字符串以指定的后缀结尾,则此函数返回true,如果给定的字符串不以指定的后缀结尾,则返回 false。它是在字符串包下定义的,因此您必须在程序中导入...

  Golang 中的反射

📅  最后修改于: 2021-10-24 13:14:44        🧑  作者: Mango

反射是程序在运行时内省和分析其结构的能力。在 Go 语言中,反射主要是通过类型来进行的。反射包为此目的提供了所有必需的 API/方法。反射通常被称为元编程的一种方法。为了更好地理解反射,让我们先了解一下空接口:“An interface that specifies zero methods is known as the empty interface.”编程需要懂一点英语当我们声明一个具有未知...

  如何在 Golang 中以小写形式转换一段字节?

📅  最后修改于: 2021-10-24 13:14:57        🧑  作者: Mango

在 Go 语言中切片比数组更强大、灵活、方便,是一种轻量级的数据结构。切片是一个可变长度的序列,用于存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。在 Go 字节切片中,您可以使用ToLower()函数将切片转换为小写。此函数返回给定字节切片的副本(视为 UTF-8 编码字节),其中所有 Unicode 字母都映射为小写。它是在 bytes 包下定义的,因此您必须在程序中导入 byte...

  Golang 中的 time.Time.Minute()函数示例

📅  最后修改于: 2021-10-24 13:15:08        🧑  作者: Mango

在 Go 语言中,时间包提供了确定和查看时间的功能。 Go 语言中的Time.Minute()函数用于查找“t”提供的指定小时内的分钟偏移量,范围为 [0, 59]。而且,这个函数是在time包下定义的。在这里,您需要导入“time”包才能使用这些功能。句法:这里,“t”是规定的时间。返回值:它返回“t”提供的指定小时内的分钟偏移量。示例 1:输出:示例 2:输出:此处,所述分钟超出通常范围,但在...

  在 Golang 中的持续时间

📅  最后修改于: 2021-10-24 13:15:20        🧑  作者: Mango

与时间和日期相关的操作是软件开发的关键部分(例如日志保存)。 Go 标准库提供了一个时间包,里面有很多处理日期和时间的函数和方法。操作系统测量两种类型的时间“挂钟”时间和“单调”时间。挂钟时间用于告诉时间,而单调时钟时间用于测量时间。 Go time 包提供了测量和操作两个时钟的功能。 Golang拥有了time.time数据类型来处理挂钟时间和time.Duration对付单调时间。第一个基本方...

  如何在 Golang 中获取 Int31 类型的随机数?

📅  最后修改于: 2021-10-24 13:15:32        🧑  作者: Mango

Go 语言在 math/rand 包的帮助下为生成指定类型的随机数提供了内置支持。这个包实现了伪随机数生成器。这些随机数是由一个源生成的,每次程序运行时,这个源都会产生一个确定性的值序列。如果你想为安全敏感的工作随机数,那么使用 crypto/rand 包。您可以借助 math/rand 包提供的Int31()函数从默认源生成 31 位整数的非负伪随机数作为 int32 类型。因此,您需要借助 i...

  Golang 中的正则表达式是什么?

📅  最后修改于: 2021-10-24 13:15:44        🧑  作者: Mango

正则表达式(或 RegEx)是一个特殊的字符序列,它定义了用于匹配特定文本的搜索模式。在 Golang 中,有一个用于正则表达式的内置包,称为regexp包,其中包含所有操作列表,例如过滤、替换、验证或提取。它使用 RE2 语法标准。MatchString()函数报告作为参数传递的字符串是否包含正则表达式模式的任何匹配项。句法:返回:匹配的布尔值,错误错误例子:输出:为了存储复杂的正则表达式以供以...

  如何在 Golang 中重复一段字节?

📅  最后修改于: 2021-10-24 13:15:55        🧑  作者: Mango

在 Go 语言中切片比数组更强大、灵活、方便,是一种轻量级的数据结构。切片是一个可变长度的序列,用于存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。在 Go 字节切片中,您可以在Repeat()函数的帮助下将切片的元素重复特定次数。此方法返回一个新字符串,其中包含切片的重复元素。它是在 bytes 包下定义的,因此您必须在程序中导入 bytes 包才能访问 Repeat函数。句法:这里...

  Golang 中的字符串.Replace()函数示例

📅  最后修改于: 2021-10-24 13:16:06        🧑  作者: Mango

字符串.Replace() Golang 中的函数用于返回给定字符串的副本,其中 old 的前 n 个非重叠实例被新的替换。句法:这里, s 是原始或给定的字符串, old 是您要替换的字符串。新鲜的是它取代了旧的,n为老更换的次数。注意:如果 old 为空,它会在字符串的开头和每个 UTF-8 序列之后匹配,为 k-rune 字符串产生最多 k+1 次替换。如果 n < 0,则替换次数没有限制。...

  如何在 Golang 中找到 Channel、Pointer 和 Slice 的容量?

📅  最后修改于: 2021-10-24 13:16:18        🧑  作者: Mango

Go 语言,容量定义了特定可以容纳的最大元素数。这里的任务是在 Golang 中找到 Channel、Pointer 和 Slice 的容量,我们可以使用cap()函数。句法:这里, l 的类型是一个指针。让我们在示例的帮助下讨论这个概念:例一:本例中使用 cap()函数在 Golang 中查找 Pointer 的容量。输出:示例2:本示例中使用cap()函数查找Golang 中Channel 的...

  Go 语言中的循环控制语句

📅  最后修改于: 2021-10-24 13:16:29        🧑  作者: Mango

Go语言中的循环控制语句用于改变程序的执行。当给定循环的执行离开其作用域时,则在该作用域内创建的对象也将被拆除。 Go 语言支持 3 种类型的循环控制语句:休息去继续中断声明break 语句用于终止它所在的循环或语句。之后,控制将传递到 break 语句之后出现的语句(如果可用)。如果 break 语句存在于嵌套循环中,则它仅终止那些包含 break 语句的循环。流程图:例子:输出:转到语句该语句...

  Golang 结构中的提升方法

📅  最后修改于: 2021-10-24 13:16:41        🧑  作者: Mango

在 Go 结构中,提升方法的工作就像提升字段一样。我们在嵌套结构中使用这个概念,其中一个结构是另一个结构中的字段,只需将结构的名称添加到另一个结构中,它的行为就像嵌套结构的匿名字段。并且该结构(嵌套结构除外)的方法是嵌套结构的一部分,这种类型的方法称为提升方法。或者换句话说,提示方法是那些由子结构实现的方法,并且可以被父结构访问。要点:如果子结构和父结构包含具有相同名称但接收器类型不同的方法,则这...

  在 Golang 结构中作为字段的函数

📅  最后修改于: 2021-10-24 13:16:52        🧑  作者: Mango

Golang 中的结构体或结构体是用户定义的类型,它允许我们将一组不同类型的元素创建为一个单元。任何具有某些属性或字段集的现实世界实体都可以表示为一个结构体。我们知道,在 Go 语言中,函数也是用户定义的类型,因此允许在 Go 结构中创建函数字段。您还可以使用匿名函数在 Go 结构中创建函数字段,如示例 2 所示。句法:让我们在示例的帮助下讨论这个概念:示例 1:输出:示例 2:输出:...

  Golang 中的 time.Time.Before()函数示例

📅  最后修改于: 2021-10-24 13:17:03        🧑  作者: Mango

在 Go 语言中,时间包提供了确定和查看时间的功能。 Go 语言中的Time.Before()函数用于检查指定的时刻 t 是否在指定的 u 之前。而且,这个函数是在time包下定义的。在这里,您需要导入“time”包才能使用这些功能。句法:这里,“t”是规定的时间,“u”是作为 Before() 方法中的参数出现的时间。返回值:如果“t”出现在“u”之前,则返回真,否则返回假。示例 1:输出:示例...

  Golang 中的 atomic.StoreUint32()函数示例

📅  最后修改于: 2021-10-24 13:17:14        🧑  作者: Mango

在 Go 语言中,原子包提供较低级别的原子内存,这有助于实现同步算法。 Go 语言中的StoreUint32()函数用于将 val 原子地存储到*addr 中。这个函数是在 atomic 包下定义的。在这里,您需要导入“sync/atomic”包才能使用这些功能。句法:这里,addr表示地址。注意:(*uint32) 是指向 uint32 值的指针。但是,int32 包含从 0 到 4294967...