如何在GoLang中为init声明两个变量?

时间:2017-09-30 06:42:17

标签: go

我写的时候:

package main

import (
    "fmt"
)

func Sqrt(x float64) float64 {
    var ret float64

    for z := 1.0, n := 0;n < 10;n++ {
        ret = z - (z*z - x) / 2*z
    }
    return ret
}

func main() {
    fmt.Println(Sqrt(2))
}

语法错误:z:= 1.0,n用作值。

  

z:= 1.0

下面的for block

package main

import (
    "fmt"
)

func Sqrt(x float64) float64 {
    var ret float64
    z := 1.0
    for n := 0;n < 10;n++ {
        ret = z - (z*z - x) / 2*z
    }
    return ret
}

func main() {
    fmt.Println(Sqrt(2))
}

它没关系,那么如何在for块的init中定义两个变量?

1 个答案:

答案 0 :(得分:1)

For clauseInit StatementSimple Statement,仅包含一个Assigment

因此,在您的情况下,您不能使用不同的类型/值声明多个变量。你可以使用元组赋值

for z, n := 1.0, 0; n < 10; n++ {

playground