for-loop - 如果我将 golang 中的增量相乘,则 For 循环不会递增
问题描述
我假设我可以使用任何运算符来增加 for 循环中的递增变量。看起来情况并非如此。永远遵循代码循环。
import (
"fmt"
)
func main() {
for i:=0; i<10; i=i*2{
fmt.Println(i)
}
}
以下代码工作正常。
import (
"fmt"
)
func main() {
for i:=0; i<10; i=i+2{
fmt.Println(i)
}
}
解决方案
你的循环从 开始i := 0
,所以你只是在不断地做i := 0 * 2
,所以你得到一个无限循环(你应该这样做),因为0 < 10
并且i
永远不会真正变大。
推荐阅读
- python - pandas groupby 在组内具有排除条件
- javascript - Github 添加/删除的数量似乎与项目的行数不相上下
- javascript - 检查对象数组中的所有属性值是否相同
- javascript - 如何在.map中获取整个数组?
- c++ - 对于派生对象的基类型指针,make_unique 的语法是什么?
- python - Pygame没有定义?
- sql - Redshift 查询需要很长时间进行分组
- go - 你如何反思地调用 Go 结构的方法?
- java - 使用本机代码从后台颤振应用程序启动活动
- netlogo - 我怎么打电话
- 这里的程序当 是作为参数或netlogo 中的函数内的参数传递吗?