变量三要素 : 变量名
变量值
数据类型
变量在同一作用域内不能重名
不赋值,就默认使用初始值
package main
import "fmt"
func main(){
//先定义
var a int
//赋值
a = 10
//打印输出变量
fmt.Println("a value: ",a)
}
Print
系列函数会将内容输出到系统的标准输出,区别在于Print
函数直接输出内容,Printf
函数支持格式化输出字符串,Println
函数会在输出内容的结尾添加一个换行符。
package main
import (
"fmt"
“reflect" // 后面调用TypeOf查看变量类型
)
func main(){
// 声明直接赋值
var num1 = 10
var num2 = 11.11
var str1 = "Hello,go"
//使用Printf进行打印
fmt.Printf("The num1 value:%v , type:%s \n", num1, reflect.TypeOf(num1))
fmt.Printf("The num2 value:%v , type:%s \n", num2, reflect.TypeOf(num2))
fmt.Printf("The str1 value:%v , type:%s ", str1, reflect.TypeOf(str1))
}
var
,使用:=
声明赋值注意:这种声明方法只能作用于函数体内
package main
import (
"fmt"
"reflect"
)
func main() {
//不使用var关键字,直接使用 := 来声明
//注意: 左侧的变量必须是没有声明过的
num3 := 10010
str2 := "hi,go"
fmt.Printf("The num3 value:%v ,type:%s \n", num3, reflect.TypeOf(num3))
fmt.Printf("The str2 value:%v ,type:%s ", str2, reflect.TypeOf(str2))
}
package main
import (
"fmt"
)
func main() {
//先定义,再赋值
var i, j, k int
i, j, k = 1, 2, 3
//自行判断变量类型
var m, n, o = 1, 10.1, "100.111"
//类型推导
a, b, c := 10, 20.20, "三零"
fmt.Printf("The value of i:%v, j:%v, k:%v\n", i, j, k)
fmt.Printf("The value of m:%v, n:%v, o:%v\n", m, n, o)
fmt.Printf("The value of a:%v, b:%v, c:%v", a, b, c)
}