go 语言随笔1

range 关键字

用于for循环中迭代数组(array)、切片(slice)、链表(channel)或集合(map)的元素。

  1. 返回数组、切片的索引
go 复制代码
//声明一个切片
	nums := []int{1,2,3,4}
	sun := 0
	//_表示空白符,省略了key
	for _,num := range nums{
		sun += num
	}
	fmt.Println("sun = ",sun)
	//在数组上使用range将传入index和值两个变量,
	for i,num := range nums{
		if num == 3 {
			fmt.Println("index = ",i)
		}
	}
  1. 返回集合(map)的key
go 复制代码
kvs := map[string]string{"a":"apple","b":"banana"}
	for k,v := range kvs{
		fmt.Printf("%s -> %s\n",k,v)
	}
  1. 返回字符串的索引和对应的Unicode的值
go 复制代码
for i,c := range "php"{
		fmt.Println(i,c)
	}
相关推荐
IT_陈寒13 小时前
Vite热更新失效?你可能漏了这个配置
前端·人工智能·后端
Leighteen14 小时前
`try-finally` 里的 `return`:为什么 `finally` 会悄悄改掉返回值、吞掉异常
java·开发语言
05664614 小时前
Python康复训练——控制流与函数
开发语言·python·学习
峥无14 小时前
C++11 深度详解:现代 C++ 基石全梳理
开发语言·c++·笔记
阿米亚波14 小时前
【C++ STL】std::unordered_multimap
开发语言·数据结构·c++·笔记·stl
名字还没想好☜14 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
SomeB1oody14 小时前
【RustyML入门】1.0. 快速上手
开发语言·后端·机器学习·rust·教程
狗凯之家源码网15 小时前
短剧系统搭建实战:源码功能与商业变现效果全景展示
开发语言·php