gpt4 book ai didi

loops - golang中的多重初始化

转载 作者:数据小太阳 更新时间:2023-10-29 03:47:06 28 4
gpt4 key购买 nike

在 id 之后的代码片段

package main

import "fmt"

var text []int64

func main() {

for i, j := 0, 1; i < 4; i, j = i+1, j+1 {
fmt.Println("Value of i, j:", i, j)
fmt.Println(text[j])
}

}

并且显示如下错误;

Value of i, j: 0 1
panic: runtime error: index out of range

goroutine 1 [running]:
main.main()
/home/cg/root/6063741/main.go:13 +0x268
exit status 2

我想知道如何解决这个错误。

谢谢

这是我要转换为 go 的 java 代码;

long    text[]; 
int num = 1

text = new long[num];

for (int i=0; i<num; i++)
{
text[i] = 0;
// do something
}
if (num > 1) {
for (int i=0,j=1; i<numSubs; i++,j++) {
// do something
System.out.Println(text[i]
)
}
}

最佳答案

The Go Programming Language Specification

Index expressions

For a slice a, a[x] denotes the element of the slice a indexed by x. The index x is in range if 0 <= x < len(a), otherwise it is out of range.


变量ij是 slice 的索引 text .它们必须始终在范围内:0 <= i < len(text)0 <= j < len(text) .自 i < j , 简化为 0 <= ij < len(text) .

对于您的 Go 示例,

package main

import "fmt"

var text []int64

func main() {
for i, j := 0, 1; i < 4 && j < len(text); i, j = i+1, j+1 {
fmt.Println("Value of i, j:", i, j)
fmt.Println(text[j])
}
}

Playground :https://play.golang.org/p/02r_VY9VMa5

关于loops - golang中的多重初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51389665/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com