在数组golang - GoLang中连接整数

Kip*_*ipz -3 arrays int go slice

我有一个有3个位置的阵列,想象它在所有位置都有5个.

[5 5 5]
Run Code Online (Sandbox Code Playgroud)

如何以一种保持555的方式将它传递给var?像这样.

n:= 555 
Run Code Online (Sandbox Code Playgroud)

Ain*_*r-G 6

与其他语言相同:

s := []int{1, 2, 3}
n := 0
for _, sn := range s {
    n *= 10
    n += sn
}
Run Code Online (Sandbox Code Playgroud)

游乐场:http://play.golang.org/p/SSemwbJuTz.

编辑:如果您计划使用更多只有一位数的数字,那么循环有点棘手:

for _, sn := range s {
    shift := 10
    for shift < sn {
        shift *= 10
    }
    n *= shift
    n += sn
}
Run Code Online (Sandbox Code Playgroud)

这适用于以下输入[]int{1, 23, 456}:http://play.golang.org/p/h1xsu9vtmP.

注意整数溢出.

  • 好吧,OP要求一个数组,而不是切片;-)并且你的解决方案失败了整数> = 10 ;-) (2认同)