📝 Go教程
801篇技术文档📅  最后修改于: 2021-10-25 02:42:45        🧑  作者: Mango
Go(也称为 Golang 或 Go 语言)是 Google 开发的语言。 Go 是一种开源、静态类型编译的显式编程语言。根据 Google Developers 的说法,Go 是一种可靠且高效的编程语言。 Go 支持并发编程。 Go 也是一种多范式和面向对象的语言。 Go 的灵感来自Python和 C 语言。它像Python具有 C 的能力,既高效又简单。Major Versions of Go...
📅  最后修改于: 2021-10-25 02:42:56        🧑  作者: Mango
Slice 是一个可变长度的序列,它存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。它就像一个具有索引值和长度的数组,但是切片的大小是调整大小的,它们不像数组那样是固定大小的。在内部,切片和数组相互连接,切片是对底层数组的引用。允许在切片中存储重复元素。切片中的第一个索引位置始终为 0,最后一个将是(切片长度 – 1)。多维切片就像多维数组一样,只是切片不包含大小。例子:输出:...
📅  最后修改于: 2021-10-25 02:43:07        🧑  作者: Mango
Go 语言在 math/rand 包的帮助下为生成指定类型的随机数提供了内置支持。这个包实现了伪随机数生成器。这些随机数是由一个源生成的,每次程序运行时,这个源都会产生一个确定性的值序列。如果你想为安全敏感的工作随机数,那么使用 crypto/rand 包。您可以在 math/rand 包提供的Intn()函数的帮助下从默认源生成 int 类型的 [0, n) 中的非负伪随机数。因此,您需要借助 ...
📅  最后修改于: 2021-10-25 02:43:19        🧑  作者: Mango
在 Go 语言中切片比数组更强大、灵活、方便,是一种轻量级的数据结构。切片是一个可变长度的序列,用于存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。在 Go 语言中,可以借助Slice()函数对切片进行排序。该函数根据提供的 less函数对指定的切片进行排序。这个函数的结果并不稳定。因此,对于稳定排序,您可以使用 SliceStable。如果指定的接口不是切片类型,则此函数恐慌。它是在...
📅  最后修改于: 2021-10-25 02:43:30        🧑  作者: Mango
在 Go 语言中,字符串不同于Java、C++、 Python等其他语言。它是一系列可变宽度字符,其中每个字符都由一个或多个使用 UTF-8 编码的字节表示。在 Go 字符串,您可以借助Count()函数计算字符串某些特定的 Unicode 代码点或costr(重复字符)的非重叠实例数。该函数返回其表示存在该字符串中的给定的字符串或Unicode代码点的总数的值。它定义在字符串包下,因此您必须在程...
📅  最后修改于: 2021-10-25 02:43:42        🧑  作者: Mango
在 Go 语言中,path包用于以斜杠分隔的路径,例如 URL 中的路径。 Go 语言中的filepath.Dir()函数用于返回指定路径中除最后一个元素之外的所有元素。删除最后一个元素后,Dir 在路径上调用 Clean 并删除尾部斜杠。如果路径为空,则 Dir 返回“.”。如果路径完全由分隔符组成,则 Dir 返回单个分隔符。返回的路径不以分隔符结尾,除非它是根目录。而且这个函数是在path包...
📅  最后修改于: 2021-10-25 02:43:53        🧑  作者: Mango
在 Go 语言中,fmt包使用类似于 C 的 printf() 和 scanf()函数的函数来实现格式化的 I/O。 Go 语言格式的fmt.Fprint()函数使用其操作数的默认格式并写入 w。这里当任何字符串不用作参数时,在操作数之间添加空格。而且,这个函数是在 fmt 包下定义的。在这里,您需要导入“fmt”包才能使用这些功能。句法:参数:此函数接受两个参数,如下所示:w io.Writer...
📅  最后修改于: 2021-10-25 02:44:04        🧑  作者: Mango
Go 语言在 cmplx 包的帮助下为复数的基本常量和数学函数提供了内置支持。您可以借助 math/cmplx 包提供的Acosh()函数找到指定复数的反双曲余弦。因此,您需要借助 import 关键字在程序中添加一个 math/cmplx 包来访问 Acosh()函数。句法:让我们在给定示例的帮助下讨论这个概念:示例 1:输出:示例 2:输出:...
📅  最后修改于: 2021-10-25 02:44:16        🧑  作者: Mango
Golang中的bits.Sub()函数用于求a、b和借位的差值,即diff = a – b -borrow。这里的借位必须是 0 或 1;否则,行为未定义。要访问此函数,需要在程序中导入 math/bits 包。在任何情况下,borrowOutput的返回值将始终为 0 或 1。句法:参数:该函数接受三个uint 类型的参数,即a、b 和borrow。借用参数的值为 1 或 0返回值:该函数返回...
📅  最后修改于: 2021-10-25 02:44:28        🧑  作者: Mango
在 Go 语言中,字符串不同于Java、C++、 Python等其他语言。它是一系列可变宽度字符,其中每个字符都由一个或多个使用 UTF-8 编码的字节表示。在围棋字符串,你才允许更换使用给定函数在给定字符串中的字符。这些函数是在字符串包下定义的,所以你必须在你的程序中导入字符串包才能访问这些函数:1. 替换:此函数返回包含通过替换旧字符串的元素创建的新字符串的字符串副本。如果给定的旧字符串为空,...
📅  最后修改于: 2021-10-25 02:44:39        🧑  作者: Mango
在 Go 语言中,原子包提供较低级别的原子内存,这有助于实现同步算法。 Go 语言中的LoadInt32()函数用于原子加载*addr。这个函数是在 atomic 包下定义的。在这里,您需要导入“sync/atomic”包才能使用这些功能。句法:这里,addr表示地址。注意:(*int32) 是指向 int32 值的指针。但是,int32 包含从 -2147483648 到 2147483647 ...
📅  最后修改于: 2021-10-25 02:44:51        🧑  作者: Mango
一个典型的程序使用在其执行过程中可能会改变的各种值。例如,一个对用户输入的值执行一些操作的程序。一个用户输入的值可能与另一用户输入的值不同。因此,这使得必须使用变量,因为另一个用户可能不会使用相同的值。当用户输入一个将在操作过程中使用的新值时,可以临时存储在计算机的随机存取存储器中,这部分内存中的这些值在整个执行过程中会发生变化,因此出现了另一个已知的术语作为变量。所以基本上,变量是可以在运行时更...
📅  最后修改于: 2021-10-25 02:45:03        🧑  作者: Mango
Go 语言提供了运行时反射的内置支持实现,并允许程序在反射包的帮助下操作任意类型的对象。Golang 中的 reflect.FuncOf()函数用于获取给定参数和结果类型的函数类型,即如果 k 代表 int 并且 e 代表字符串, FuncOf([]Type{k}, []Type{e} , false) 表示 func(int) 字符串。要访问此函数,需要在程序中导入反射包。Syntax:Para...
📅  最后修改于: 2021-10-25 02:45:15        🧑  作者: Mango
在 Go 语言中切片比数组更强大、灵活、方便,是一种轻量级的数据结构。切片是一个可变长度的序列,用于存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。在 Go 切片中,您可以借助SearchInts()函数在给定的 int 切片中搜索 int 类型的元素。此函数在整数的排序切片中搜索给定元素,如果存在于给定切片中,则返回该元素的索引。如果给定的元素在切片中不可用(它可能是 len(s_s...
📅  最后修改于: 2021-10-25 02:45:27        🧑  作者: Mango
在 Go 语言中,时间包提供了确定和查看时间的功能。 Go 语言中的Time.Zone()函数用于确定在时间“t”工作的时区。而且,这个函数是在time包下定义的。在这里,您需要导入“time”包才能使用这些功能。句法:这里,“t”是指定的时间,返回的“name”是字符串类型,返回的“偏移量”是int类型。返回值:它返回缩短的区域名称及其在 UTC 以东的秒数的偏移量。示例 1:输出:在这里,我们...