当前位置: 首页 > news >正文

Go中for循环的遮挡效应

注意:遮挡不是替换

在一个for循环中,如果我们在循环体内部声明了一个与初始化语句中的变量同名的变量,那么这个新变量会“遮挡”外部的同名变量。但这种遮挡只在声明它的那一行代码开始,直到循环体结束的范围内有效。当下一次循环开始时,外部的同名变量会重新显现,并继续使用for声明语句中的值。

可以把for循环中的变量i想象成一个房间里的灯泡,而i := i这一行代码就像是在房间的一角放了一个遮挡灯光的屏风。

for i := 0; i < 3; i++ {fmt.Println("before:", i)i := ii = 100fmt.Println("after:", i)
}

输出:

before: 0
after: 100
before: 1
after: 100
before: 2
after: 100
http://www.lryc.cn/news/117208.html

相关文章:

  • UE4 Cesium 学习笔记
  • 【LeetCode】322.零钱兑换
  • 中电金信:国际结算系统的“王冠”,为什么十年都戴在“它”的头上
  • java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis em
  • fine-tuning(微调)的理解
  • 深入理解设计模式面经
  • STM32单片机蓝牙APP宠物自动喂食器定时语音提醒喂食系统设计
  • 武汉凯迪正大—串联谐振在电力系统中应用的优点:
  • Git仓库、分支的区别
  • C#生成随机验证码
  • 如何使用C++来找出编码88表示的字符?指出至少两种方法。
  • Kafka:springboot集成kafka收发消息
  • 本质矩阵E、基本矩阵F、单应矩阵H
  • Oracle database Linux自建环境备份至远端服务器自定义保留天数
  • SpringBoot异步任务(2)|(线程池使用)
  • 解决Windows:Call to undefined function exif_imagetype()
  • 【Spring】Spring AOP 初识及实现原理解析
  • 【Express.js】集成Redis
  • StringBuilder创建的对象如何清空
  • mybatis-plus实现mysql自定义IKeyGenerator
  • 山西电力市场日前价格预测【2023-08-11】
  • 浏览器无法连接网络问题
  • ZyjDataLink 全量MySQL同步程序 - 开发过程 01
  • 为什么说Python股票接口是连接投资与编程的桥梁?
  • kubectl,helm安装到window
  • 【BASH】回顾与知识点梳理(目录)
  • TFRecords详解
  • 【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)
  • 45.113.201.X服务器远程不上是什么原因,有什么办法解决?
  • 微信小程序 地图map(电子围栏圆形和多边形)