//1.GO语言的变量声明与java有所不同,变量名放前面,数据类型放后面,不用加分号

//2.GO语言的变量必须声明后才能使用,用var关键字声明(variable),不支持在同一作用域重复声明

//3.非全局变量一旦声明就必须使用,仅仅赋值是编译不过去的,而全局变量可以不使用

下面是总代码及其运行结果哦·

package main

import "fmt"

//GO语言的变量声明与java有所不同,变量名放前面,数据类型居然放后面,不用加分号
//GO语言的变量必须声明后才能使用,用var关键字声明(variable),不支持在同一作用域重复声明
//非全局变量一旦声明就必须使用,仅仅赋值是编译不过去的,而全局变量可以不使用
var name string = "lbd" //声明方法一
var name2 = "good"      //方法二.GO语言存在类型推导,就是说声明变量的时候不给数据类型,它能从存入的数据推断出这是什么类型的数据
var age int
var gender string

//方法三.也可以这样批量声明
var (
	animals string
	lbd     bool
)

func foo() (int, string) {
	return 10, "kk"
}

func main() {

	age = 20
	animals = "tiger"
	lbd = false
	fmt.Println(name)
	fmt.Printf("%d\n", age)
	fmt.Println(name2)

	//方法四.简短变量声明,必须在函数内部用
	animals1 := "monkey" //用:=声明,也借助了类型推导
	fmt.Println(animals1)

	//匿名变量:"_",当进行多重赋值时,如果想忽略某个值可以用下划线代替,匿名变量不占命名空间,不会分配内存,所以也不存在重复声明
	x, _ := foo()
	_, y := foo()
	fmt.Printf("%d\n", x)
	fmt.Printf("%s", y)

}

 一起加油吧,还有很长的路要走呢