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)
	}
相关推荐
从零开始的代码生活_14 分钟前
C++ 模板入门:函数模板、类模板与实例化机制
开发语言·c++·后端
luj_17688 小时前
残熵算法实时化三大瓶颈突破
c语言·开发语言·网络·经验分享·算法
不听话坏9 小时前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript
mCell9 小时前
你以为短链接只是 Hash + 301/302?
后端·算法·架构
likeyi079 小时前
require 和 import的区别
开发语言·前端
咖啡八杯9 小时前
GoF设计模式——迭代器模式
java·后端·设计模式·迭代器模式
远离UE49 小时前
UE5 compute shader 原子加
开发语言·c++·ue5
C+-C资深大佬9 小时前
C++ 显式类型转换详解:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++
KaMeidebaby10 小时前
卡梅德生物技术快报|抗体亲和力成熟工业化调控新机制:差异性浆细胞增殖工艺优化思路
java·开发语言·人工智能·算法·机器学习·架构·spark
luj_176811 小时前
心形曲线轨迹控制三大关键技术
c语言·开发语言·c++·经验分享·算法