登录
首页 >  Golang >  Go问答

使用int64作为for循环的计数器

来源:stackoverflow

时间:2024-03-18 11:54:22 119浏览 收藏

在使用 int64 作为 for 循环计数器时,需要将迭代器显式声明为 int64 类型。使用 := 声明变量时,编译器会自动推断变量类型,但当初始化值为无类型常量时,编译器会将其视为 int 类型。因此,需要使用短变量声明语法,将初始化值显式转换为所需的类型,例如 int64(0)。

问题内容

在我的循环中,我将一些 int64 与我的迭代器相乘。为此,我需要将 i 显式声明为 int64。这个

var other int64 = 1597183200000 
for var i int64 = 0; i < 10; i++ {
    fmt.Println(i*other)
}

给出 语法错误:初始化器 不允许使用 var 声明。有没有办法在循环的初始值设定项中正确执行此操作?另外,为什么不允许使用 :=,但不允许使用 var 呢?他们不做同样的事情吗?


解决方案


您必须在 for 循环中使用短变量声明。由于 0 是无类型常量,因此假定为 int ,除非将其转换为其他类型:

for i:= int64(0); i < 10; i++ {

今天关于《使用int64作为for循环的计数器》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>