当前位置:  首页>> 技术小册>> GO面试指南

在 Go 中,= 和 := 都可以用于变量赋值,但它们有着不同的作用和用法。

= 是一个简单的赋值操作符,用于将右侧的值赋给左侧的变量。如果变量不存在,则会创建一个新的变量。例如:

  1. var x int
  2. x = 1
  3. fmt.Println(x) // 输出 1

而 := 则是一个短变量声明操作符,用于声明和初始化一个新的变量,并根据右侧的值推断其类型。它只能用于在函数内部声明变量。例如:

  1. x := 1
  2. fmt.Println(x) // 输出 1

在上面的示例中,x 是一个新的变量,使用 := 进行声明和初始化。

下面是一个使用 = 和 := 的示例,展示它们之间的差异:

  1. func main() {
  2. x := 1 // 短变量声明
  3. x = 2 // 简单的赋值
  4. y := "hello"
  5. z, y := 3, "world" // 多变量声明和赋值
  6. fmt.Println(x) // 输出 2
  7. fmt.Println(y) // 输出 world
  8. fmt.Println(z) // 输出 3
  9. }

在这个示例中,我们使用 := 声明并初始化变量 x 和 y,然后使用 = 给 x 赋一个新值。在最后一行,我们使用 := 声明和初始化变量 z,同时重新赋值变量 y。


该分类下的相关小册推荐: