技术分享
数据库连接池
Vue双向数据绑定
访问授权协议-OAuth2
Golang基础赋能
Golang 基础赋能(一)
Golang基础赋能(二)
Golang基础赋能(三)
Golang基础赋能(四)
-
+
首页
Golang基础赋能(四)
## Go语言切片 (Slice) ### 切片简介 - 什么是切片 Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go 中提供了一种灵活,功能强悍的内置类型切片("动态数组") ### 切片操作 - 创建切片 ```go // 1.创建切片 var slice1 []type //2.切片的基本操作 (1)追加 var slice1 []int fmt.Println(slice1) slice1 = append(slice1, 1) fmt.Println(slice1) (2)copy var slice2 = make([]int, len(slice1)) copy(slice2, slice1) fmt.Println(slice2) fmt.Println(slice1) (3)截取 slice3 := []int{ 1, 2, 3, 4, } fmt.Println(slice3[:3]) ``` ### 切片与数组的关系 在golang中切片实质就是数组的一种,是对数组的一种抽象,在代码中的体现则是 数组 -- 指定长度,超出范围报错 切片 -- 不指定长度 ## Go语言范围 (Range) ### range简介 - range的作用 中 range 关键字用于 for 循环中迭代**数组(array)、切片(slice)、通道(channel)或集合(map)**的元素。在数组和切片中它返回元素的索引和索引对应的值 ### 使用范围的语法 - 遍历切片 ```go //遍历切片 for k, v := range slice3 { fmt.Println(k, v) } ``` - 遍历字符串 range也可以遍历字符串,返回的值不是字符串本身,而是字符对应的unicode码 ```go stringTest := "test" for k, v := range stringTest { fmt.Println(k, v) } ``` ## Go语言Map (集合) ### Map简介 - Map的定义与特点 键值对的集合 ### Map的基本操作 - 创建Map ```golang //创建Map m := make(map[string]string) m2 := map[string]string{ "test": "test", } ``` - 插入、删除、查找元素 ```go (1) 插入 m["test"] = "test" (2)删除 delete(m2,"test") (3)查找元素 m["test"] ``` ### Map的遍历 - 遍历所有键值对 ```go for k, v := range map1 { fmt.Println(k, v) } ``` - 仅遍历键或值 ```go for _, v := range map1 { fmt.Println(k, v) } ```
吴晓俊
2025年1月10日 13:53
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码