五种创建变量的方法
第一种:一行声明一个变量
var name string
var name string = "Alger"
var number float32 = 3.1415
第二种:一次声明多个变量
var (
name string
age int
number float32
)
第三种:声明和初始化一个变量
name := "alger"
age := 23
number := 3.1415
第四种:声明和初始化多个变量
name,age := "alger", 23
第五种:new函数声明一个指针变量
变量分为普通变量和指针变量,普通变量存放的是数据本身,指针变量存放的是数据的地址
package main
import "fmt"
func main(){
var age int = 23
var ptr = &age//&后面接变量名,表示取出该变量的内存地址
//使用表达式new(Type)将创建一个Type类型的匿名变量,初始化威Type的零值,然后返回变量的地址,返回的指针类型为*Type
ptr2 := new(int)
fmt.Println("ptr address:", ptr)
fmt.Println("ptr2 value:",*ptr)//*后面接指针变量,表示从内存地址取出值
}
//输出
ptr address: 0xc000010098
ptr value: 0
以上不管哪种方法,变量/常量都之恩呢声明一次,声明多次编辑就会报错
匿名变量例外,称作占位符,或者空白标识符,用下划线表示
匿名变量优点:
1、不分配内存,不占用内存空间
2、不需要你为命名无用的变量名二纠结
3、多次声明不会有任何问题
用匿名接收必须接收的值,但又不会用到的值
func GetData() (int, int) {
return 100, 200
}
func main(){
a, _ := GetData()
_, b := GetData()
fmt.Println(a, b)
}