标准格式

var name type
变量 变量名 变量类型

  1. package main
  2. import "fmt"
  3. func main() {
  4. var name1 string = "zhangsan"
  5. fmt.Println(name1)
  6. }

批量格式

var 后面跟一个小括号,将所有变量括起来

var (
    a int
    b string
    c []float32
    d func() bool
    e struct {
        x int
    }
)

简短格式

名字 := 表达式

package main
import "fmt"
func main() {
    i, j := 0, 1
    fmt.Print(i,j)
}

变量交换

两个变量值互换,传统需要用一个临时值做到,go直接交换

package main
import "fmt"

func main() {
    var a int = 100
    var b int  = 200
    b,a = a,b
    fmt.Print(a,b)
}

匿名变量_

匿名变量不占用内存空间,不会分配内存。匿名变量与匿名变量之间也不会因为多次声明而无法使用。


import "fmt"

func main() {
    _,a := getDate()
    b,_ := getDate()
    fmt.Print(a,b,)
}

func getDate() (int, int) {
    return 100,200
}

变量作用域

package main

import "fmt"

// i 是全局变量
var i int

func main() {
    //a和b是局部变量
    var a int = 1
    var b int = 2
    i = a + b
    fmt.Print(i)
}