2.变量
import "fmt"
func main(){
//1.变量的声明
var age int
//2.变量的赋值
age = 18
//3.变量的使用
fmt.Println("age = ", age);
//声明和赋值可以合成一句:
var age2 int = 19
fmt.Println("age2 = ", age2);
// var age int = 20;
// fmt.Println("age = ", age);
/*变量的重复定义会报错:
# command-line-arguments
.\main.go:16:6: age redeclared in this block
previous declaration at .\main.go:6:6
*/
//不可以在赋值的时候给与不匹配的类型
var num int = 12.56 //报错
fmt.Println("num = ", num);
}
- 从以上代码可知,go使用var这个关键词来声明,且把变量类型后置,后置这个行为是和其他几种我学过的语言所不一样的。至于声明赋值在一起的话,则和其他语言一模一样。
- 而同样使用var这个关键词来声明变量的就是JavaScript(不过已经不推荐用var了,而使用了let),这点go和JavaScript是有相似点的。至于Java虽然也有var这个关键词,但在Java是IDE主要是根据前后语境来动态判断变量类型的。
- 除此,go也是有四种变量定义方法:
- 1.使用var 变量名字 类型且赋值
- 2.使用var 变量名字 类型但不赋值,即默认值
- 3.var 变量名字 且赋值 但没有指明类型,此时跟Java类似,var有根据赋值类型来动态判断变量类型的功能
- 4.省略var,但赋值时使用:=,而不是=
- 5.一次性定义多个变量 var{变量 赋值 变量 赋值}的形式,这点跟其他语言不同的是,需要使用{}。