以下是一些常用的 Go 内置函数及其示例:
-
len(): 返回集合类型(数组、切片、映射、字符串等)的长度。
package main import "fmt" func main() { s := []int{1, 2, 3, 4, 5} fmt.Println(len(s)) // 输出 5 str := "Hello, World!" fmt.Println(len(str)) // 输出 13 }
append(): 用于向切片追加元素。
package main import "fmt" func main() { s := []int{1, 2, 3} s = append(s, 4, 5) fmt.Println(s) // 输出 [1 2 3 4 5] }
make(): 用于创建切片、映射和通道。
package main import "fmt" func main() { // 创建长度为 5 的整数切片 s := make([]int, 5) fmt.Println(s) // 输出 [0 0 0 0 0] // 创建长度为 0,容量为 10 的整数切片 s2 := make([]int, 0, 10) fmt.Println(len(s2), cap(s2)) // 输出 0 10 // 创建容量为 3 的映射 m := make(map[string]int, 3) m["a"] = 1 fmt.Println(m) // 输出 map[a:1] }
copy(): 用于复制切片内容到另一个切片。
package main import "fmt" func main() { s1 := []int{1, 2, 3} s2 := make([]int, 3) copy(s2, s1) fmt.Println(s2) // 输出 [1 2 3] }
close(): 用于关闭通道。
package main import "fmt" func main() { ch := make(chan int) go func() { ch <- 1 ch <- 2 close(ch) }() for i := range ch { fmt.Println(i) } }
delete(): 用于删除映射中的元素。
package main import "fmt" func main() { m := map[string]int{"a": 1, "b": 2} delete(m, "b") fmt.Println(m) // 输出 map[a:1] }
这些是 Go 语言中一些常用的内置函数及其示例。通过使用这些内置函数,可以更加方便地操作切片、映射、通道等数据结构,并实现各种功能。