variablesgocolon-equals

no new variables on left side of :=


What's happening here?

package main

import "fmt"

func main() {

    myArray  :=[...]int{12,14,26}  ;     
    fmt.Println(myArray)

    myArray  :=[...]int{11,12,14} //error pointing on this line 

    fmt.Println(myArray) ;

}

It throws an error that says

no new variables on left side of :=

What I was doing was re-assigning values to an already declared variable.


Solution

  • Remove the colon : from the second statement as you are assigning a new value to existing variable.

    myArray = [...]int{11,12,14}
    

    colon : is used when you perform the short declaration and assignment for the first time as you are doing in your first statement i.e. myArray :=[...]int{12,14,26}.