【Go】20、golang for range循环
- go语言中可以使用for range遍历数组、切片、字符串、map即通道(channel)。通过for range遍历的返回值有以下规律:
- 数组、切片、字符串返回索引和值
- map返回键和值
- 通道(channel)只返回通道内的值
1、go语言for range语法
for key, value := rangeoldMap {
nevMlap[key] = value
}
2、go语言for range实例
- 循环数组
func f1() {
a := [5]int{1, 2, 3, 4, 5}
for i, v := range a {
fmt.Printf("i, v: %d %v \n", i, v)
}
}
func main() {
f1()
}
# 输出结果
i, v: 0 1
i, v: 1 2
i, v: 2 3
i, v: 3 4
i, v: 4 5
- 循环切片
func f2() {
var a = []int{1, 2, 3}
for _, v := range a {
fmt.Printf("v: %v\n", v)
}
}
func main() {
f2()
}
- 循环map
func f3() {
var m = make(map[string]string, 0)
m["name"] = "tom"
m["age"] = "20"
m["email"] = "xxx@aa.com"
for key, value := range m {
fmt.Printf("%v: %v \n", key, value)
}
}
func main() {
f3()
}
# 输出结果
email: xxx@aa.com
name: tom
age: 20
- 循环字符串
func f4() {
s := "hello, go"
for i, v := range s {
fmt.Printf("%d: %c \n", i, v)
}
}
func main() {
f4()
}
# 输出结果
0: h
1: e
2: l
3: l
4: o
5: ,
6:
7: g
8: o
本文来自博客园,作者:郭祺迦,转载请注明原文链接:https://www.cnblogs.com/guojie-guojie/p/16390294.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析