企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 声明变量的方法 > **var 变量名 类型 = 表达式** > **var 变量 = 表达式** > **变量 := 表达式** ``` // 批量声明 var ( a int b string c bool ) ``` 初始化变量注意 * 整型和浮点型默认值为0 * 字符串默认值为空字符串 * 布尔默认false * 切片,指针,函数,映射默认值nil ``` package main import "fmt" func main() { var num int = 10 fmt.Println(num) // 输出10 var nums = 100 fmt.Println(nums) //输出100 name, age := "Tom", 18 fmt.Println(name, age) //输出Tom 18 } ``` 省略变量类型编译器会根据 等号右边推导变量的类型。单个短变量不能重复声明类型。短声明会自己推导类型 多重赋值时,变量的左值和右值按照从左到右的顺序依次赋值。 ### 变量值交换 > **使用中间变量c进行交换,也可以使用多重赋值的方法** ``` package main import "fmt" func main() { var c int a := 1 b := 2 //临时变量c储存a的值 c = a a = b b = c fmt.Println(a) // 2 fmt.Println(b) // 1 // 使用另外一种方法 换回去 a, b = b, a fmt.Println(a) // 1 fmt.Println(b) // 2 } ``` ### 匿名变量 >**赋值给多个变量时,又不需要的变量可以用匿名变量代替** ``` package main import "fmt" func ReturnData() (int, int) { return 10, 20 } func main() { a, _ := ReturnData() //a接收函数ReturnData()里面的第一个值,第二个匿名变量接收 _, b := ReturnData() //b接收函数ReturnData()里面的第二个值,,第一个匿名变量接收 fmt.Println(a, b) // 输出 10 20 } ```