Golang 内置函数
warning:
这篇文章距离上次修改已过429天,其中的内容可能已经有所变动。
Golang 提供了一些内建函数,这些函数可以直接使用,无需额外的包导入。以下是一些常见的 Golang 内建函数:
len:用于获取数组、切片、字符串、Map 的长度。
str := "Hello, World!"
length := len(str)
fmt.Println(length) // 输出:13cap:用于获取数组、切片、Map、channel 的容量。
slice := make([]int, 10)
capacity := cap(slice)
fmt.Println(capacity) // 输出:10new和make:new用于分配内存,返回类型的指针;make用于内存分配并初始化,返回初始化后的(引用)类型值。
// new
p := new(int)
fmt.Println(*p) // 输出:0
// make
s := make([]int, 10)
fmt.Println(s) // 输出:[0 0 0 0 0 0 0 0 0 0]append:用于添加元素到数组、切片中。
slice := []string{"Hello", "World"}
slice = append(slice, "!" )
fmt.Println(slice) // 输出:[Hello World !]copy:用于复制数组、切片中的元素。
src := []int{1, 2, 3, 4, 5}
dst := []int{10, 20, 30, 40, 50}
n := copy(dst, src)
fmt.Println(n) // 输出:5
fmt.Println(dst) // 输出:[1 2 3 4 5]delete:用于从 Map 中删除键值对。
m := map[string]int{"one": 1, "two": 2}
delete(m, "one")
fmt.Println(m) // 输出:map[two:2]panic和recover:panic用于引发一个异常,recover用于恢复程序的正常运行。
func main() {
defer func() {
if r := recover(); r != nil {
fmt.Print("Recovered in main", r)
}
}()
panic("crash")
}print和println:用于打印输出。
print("Hello, ")
println("World!") // 输出:Hello, World!real和imag:用于获取复数的实部和虚部。
c := 3.14 + 1.23i
realPart := real(c)
imagPart := imag(c)
fmt.Println(realPart) // 输出:3.14
fmt.Println(imagPart) // 输出:1.23close:用于关闭 channel。
c := make(chan int)
go func() {
c <- 1
}()
close(c)这些内建函数提供了 Golang 编程的基本功能,可以根据需要选择使用。
评论已关闭